문제

다중 언어 웹 사이트가 있으며 CSV-Source에서 PSD-Files에서 TextLayers를 업데이트하는 프로세스를 자동화해야합니다.

너비가 변경되어 PSP에 결함이있을 수 있지만 어쨌든 문서 내부에 텍스트를 갖는 데 많은 도움이 될 것입니다.

내 옵션은 무엇입니까?

편집하다:

Murmelschlurmel에는 작업 솔루션이 있습니다. Adobe 문서에 대한 링크는 다음과 같습니다.

http://livedocs.adobe.com/en_us/photoshop/10.0/help.html?content=wsfd1234e1c4b69f30ea53e410031ab64-740d.html

CSV 파일의 형식은 그리 좋지 않습니다. 각 변수마다 열이 필요합니다. 각 변수에 대해 행을 기대할 것입니다.

Umlaut (ä, Ö 등)와 함께 작동합니다.

편집 1 :

또 다른 해결책은 COM을 사용하여 Photoshop을 자동화하는 것입니다. 변경된 텍스트가 필요한 두 개의 템플릿 (버튼)이 있으면 좋습니다. 파이썬으로 된 내 스크립트는 다음과 같습니다.

템플릿 필레나 이름, TargetFilename, TargetFormat, Text (예 : template.psd, button1, gif, nicebutton)가있는 Excel 파일이 있어야합니다. 시트의 첫 번째 줄은 사용되지 않습니다. PSP 템플릿에는 1 개의 텍스트 레이어 만 있어야하며 계층 그룹이 없어야합니다.

import win32com.client
import xlrd 
spreadsheet = xlrd.open_workbook("text_buttons.xls")
sheet = spreadsheet.sheet_by_index(0)

psApp = win32com.client.Dispatch("Photoshop.Application")  
jpgSaveOptions = win32com.client.Dispatch("Photoshop.JPEGSaveOptions")  
jpgSaveOptions.EmbedColorProfile = True
jpgSaveOptions.FormatOptions = 1
jpgSaveOptions.Matte = 1
jpgSaveOptions.Quality = 1

gifSaveOptions = win32com.client.Dispatch("Photoshop.GIFSaveOptions")



for rowIndex in range(sheet.nrows):
    if(rowIndex > 0):
        template =  sheet.row(rowIndex)[0].value
        targetFile = sheet.row(rowIndex)[1].value
        targetFileFormat = sheet.row(rowIndex)[2].value
        textTranslated = sheet.row(rowIndex)[3].value
        psApp.Open(r"D:\Design\Produktion\%s" % template ) 
        doc = psApp.Application.ActiveDocument

        for layer in doc.Layers:  
            if (layer.Kind == 2):
                layer.TextItem.Contents = textTranslated
                if(targetFileFormat == "gif"):
                    doc.SaveAs(r"D:\Design\Produktion\de\%s" % targetFile, gifSaveOptions,  True, 2)
                if(targetFileFormat == "jpg"):
                    doc.SaveAs(r"D:\Design\Produktion\de\%s" % targetFile, jpgSaveOptions,  True, 2)
도움이 되었습니까?

해결책

"데이터 중심 디자인"을 사용하여이를 수행 할 수 있습니다. 개념도 있습니다 데이터 중심 디자인 컴퓨터 과학에서, 그러나 내가 볼 수있는 한 이것은 Photoshop에서 단어의 사용과 관련이 없습니다.

진행 방법은 다음과 같습니다.

Photoshop에 이미지를로드하고 변수를 이미지> 변수> 정의.

그런 다음 CSV를 형식으로 변환하여 Photoshop을 읽을 수 있습니다. 나는 최고의 경험을 가지고있었습니다 탭이 묘사 된 텍스트.

마지막으로 Photoshop에 텍스트 파일을로드하십시오 이미지> 변수> 데이터 세트 Photoshop이 모든 반복을 저장하도록하십시오.

이것을 먼저 시도했을 때 Photoshop 도움말 파일이 충분한 세부 정보를 제공하지 않았다는 것을 알았습니다. 인터넷을 검색했습니다 Photoshop "데이터 세트" 좋은 튜토리얼을 찾았습니다. DigitalTutors.

다른 팁

너무 많이 나올 수도 있지만 Adobe Altercast/Grphics 서버를 사용하여 정확히 동일한 문제를 처리했습니다.

또한 단지 텍스트 GIF/JPG 이미지 인 경우 Python+PIL (Python Imaging Library)을 사용할 수 있습니다. 다음은 샘플 코드입니다 (Arial 및 Osaka Fonts가 설치된 Windows OS에서 작동합니다.)

#!/usr/bin/python
# -*- coding: utf-8 -*-
import ImageFont, ImageDraw, Image
#font = ImageFont.truetype("/usr/share/fonts/bitstream-vera/Vera.ttf", 24)
#font = ImageFont.truetype("futuratm.ttf", 18)
font = ImageFont.truetype("arial.ttf", 18)
im = Image.new("RGB", (365,20), "#fff")
draw = ImageDraw.Draw(im)
draw.text((0, 0), "Test Images", font=font, fill="#000")
im.save("TestImg_EN.gif", "GIF")


font = ImageFont.truetype("osaka.ttf", 18)
im = Image.new("RGB", (365,20), "#fff")
draw = ImageDraw.Draw(im)
draw.text((0, 0), u"テストイメージ", font=font, fill="#000")
im.save("TestImg_JP.gif", "GIF")
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top