Re: [Hackmeeting] Proposta logo

このメッセージを削除

このメッセージに返信
著者: packz
日付:  
To: hackmeeting
題目: Re: [Hackmeeting] Proposta logo
jilt ha scritto:
> On 20080530@12:36, packz wrote:
>> per essere fico it's fico
>>
>
> grazie :)
>
>> solo che le lettere non le capisco (sarebbero una H ed una M?)
>
> mi chiedo perche' dici che non le hai capite se le hai capite....

lo chiedo perché non mi sembrano una H ed una M
>
> eesatto
> pero'
> quello che mi serve e' un effetto di questo tipo che utilizzi lo
> strumento "3D cube" di inkscape che crea automaticamente dei cubetti 3
> renderizzati in vettoriale
>
> ora ti faccio degli esempi pratici dei passaggi che servono:
>
> 1) modifica -> cloni -> crea cloni

[snip]
> Ho deciso di usaare i quadratini perche' com'e' noto non e' possibile
> stampare il logo sulle magliette se non in bicromia
>
> salumi e tabacchi
> jilt
>


Prima di tutto bisogna riuscire a far funzionare gli script su inkscape
porcodio... quei minchioni mettono gli esempi sul sito che poi non
funzionano: hanno cambiato la dipendenza nella libreria XML che adesso usa
lxml... ripeto porcodio... a chi è interessato allego la versione che
funzia... vanno inseriti in ~/.inkscape/extensions/ e poi bisogna lanciare
il programma specificando il path per i moduli python

PYTHONPATH=/usr/share/inkscape/extensions/ inkscape

altrimenti errore.... non so se è un problema comune, sulla mia debian
altrimenti causa bestemmia (le mie)...

Nel caso mi adopero per le cose che hai indicate sopra, ma non prometto
niente....


- --
"Per trasmettere 1 bit di informazione in un ambiente a temperatura T si
necessitano kTln2 joule di energia"

gpg --keyserver gpg.mit.edu --recv-keys E25ED3A9

web site http://www.autistici.org/packz
blog     http://packz.noblogs.org

<inkscape-extension>
  <_name>Hello World!</_name>
  <id>org.ekips.filter.hello_world</id>
  <dependency type="executable" location="extensions">hello_world.py</dependency>
  <dependency type="executable" location="extensions">inkex.py</dependency>
  <param name="what" type="string" _gui-text="What would you like to greet?">World</param>
  <param name="size" type="int" min="0" max="1000" _gui-text="Font size">50</param>
  <effect>
    <object-type>all</object-type>
    <effects-menu>
       <submenu _name="Examples"/>
    </effects-menu>
  </effect>
  <script>
    <command reldir="extensions" interpreter="python">hello_world.py</command>
  </script>
</inkscape-extension>

#!/usr/bin/env python

# We will use inex module with predefined effect base class.
import inkex
# simplestyle module provides functions for style parsing.
from simplestyle import *
from lxml import etree

""" Example Inkscape effect extension.
Creates a new layer with "Hello World!" text centered in middle of document."""
class HelloWorldEffect(inkex.Effect):
    """ Constructor.
    Defines "--what" option of a script."""
    def __init__(self):
        # Call base class construtor.
        inkex.Effect.__init__(self)


        # Define string option "--what" with "-w" shortcut and default value "World".
        self.OptionParser.add_option('-w', '--what', action = 'store',
          type = 'string', dest = 'what', default = 'World',
          help = 'What would you like to greet?')


        self.OptionParser.add_option('-s', '--size', action = 'store',
          type = 'int', dest = 'size', default = '20',
          help = 'Font size')


    """ Effect behaviour.
    Overrides base class' method and insert "Hello World" text in SVG document. """
    def effect(self):
        # Get script "--what" and '--size' option values.
        what = self.options.what
        size = self.options.size


        # Get access to main SVG document element and get its dimensions.
        svg = self.document.getroot()
        width = inkex.unittouu(svg.get('width'))
        height = inkex.unittouu(svg.get('height'))


        # Create a new layer.
        layer = etree.Element('g')
        layer.set('label', 'Hello %s Layer' % (what))
        layer.set('groupmode', 'layer')


        # Create text element
        text = etree.Element('text')
        text.text = 'Hello %s!' % what


        # Set text position to center of document.
        text.set('x', str(width / 2))
        text.set('y', str(height  / 2))


        # Center text horizontally with CSS style.
        font_size = "%dpx" % size
        style = {
            'text-align' : 'center',
            'text-anchor': 'middle',
            'font-size'  : font_size
        }
        text.set('style', formatStyle(style))


        # Connect elements together.
        layer.append(text)
        svg.append(layer)


# Create effect instance and apply it.
effect = HelloWorldEffect()
effect.affect()