Scribus'taki metni bir metin dosyasından nasıl otomatik olarak çıkarabilirim


1

Cihazlarım için seri numaralarıyla etiket yazdırmak için Scribus kullanıyorum. Yazdırmak istediğim seri numaralarını otomatik olarak bir metin dosyasından (hatta bir Google dokümanından) Scribus'a okuyabilir ve ekleyebilmemin bir yolu var mı?

Fikir şudur: Scribus'ta alanları tanımlarım ve bu alanların değerlerini otomatik olarak doldururum bir metin dosyası oluşturur.

Mümkün mü?

Yanıtlar:


1

Dosyayı düzenlemek için python kullandım.

    #!/usr/bin/python
    # this script populates the scribus template for the SN of FuelSpy
    # Olmo Mezger
    import re # regular expression
    import os.path #for os path operations

    #config
    myFile_Tempate = "SN_Template.sla"
    myFile_Out = "SN_Tier_01.sla"

    i_start = 1
    i_number = 27*7

    # check if file exists
    if os.path.isfile(myFile_Out):
        print 'aborting, output file exist and I dont want to overwrite it. Delete it manually if you want to continue',
        #quit()
    else:
        print 'continue'

    #
    f_in = open(myFile_Tempate, 'r')
    f_out =open(myFile_Out, 'w')

    # loop
    i = i_start
    for line in f_in:
        #print line
        myString = line
        if myString.find('%') == -1: # it does not have %
            f_out.write(myString)   
        else:
            myNumber = '%0*d' % (4, i)
            myNewString = myString.replace('%',myNumber)
            #print myNewString
            f_out.write(myNewString)
            print i
            i = i+1



    f_in.close()
    f_out.close()
    print "done"


0

Scribus ITEXT okumak

ReadSerial.ps1:

$xmldata=[xml](gc 'C:\1\menu_template1.sla')
($xmldata.SelectNodes("/SCRIBUSUTF8NEW/DOCUMENT/PAGEOBJECT[@ANNAME='Text1232']/ITEXT/@CH")).itemof(0)."#text"

çıktı:

Tested number

WriteSerial.ps1:

$xmldata=[xml](gc 'C:\1\menu_template1.sla')
$xmldata.SelectNodes("/SCRIBUSUTF8NEW/DOCUMENT/PAGEOBJECT[@ANNAME='Text1232']/ITEXT") | Set-Variable xmlnode

$xmlnode.SetAttribute("CH", "New Serial")
$xmldata.Save('C:\1\menu_template1.sla')

Scribus ITEXT yazma


Cevabınız için teşekkür ederim. Bu görev için bir python betiği hazırladım. Beni dosya formatının xml olduğu fikrine getirdin, bu yüzden onu python ile düzenleyebilirim. İşte
betiğim
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.