CS5 eksportuje warstwy jako pliki bez sekwencji numerów


9

Używam warstw cs5 do modyfikacji, a następnie eksportowania warstw jako plików. Podczas zapisywania CS5 automatycznie dodaje na końcu pewną sekwencję numerów, modyfikując w ten sposób moją oryginalną nazwę pliku.

Automatycznie osadza prefiks sekwencji numerów w eksportowanych warstwach, dzięki czemu moja konwencja nazewnictwa plików jest bezużyteczna. Czy można to naprawić? Czy istnieje opcja „Nie numeruj automatycznie moich plików” lub „Używaj nazw warstw jako nazw plików”?

NIE chcę tej numeracji. Jak temu zapobiec?


nie, nie ma niewłaściwego umieszczenia. Zrobiłem Plik> Skrypty> Załaduj pliki do stosu. Skończyłem zmiany i teraz muszę wyeksportować wszystkie warstwy do osobnych plików (Plik> Skrypty> Eksportuj warstwy do plików). To wtedy CS5 wykonuje tę automatyczną numerację. Mam nadzieję, że teraz to masz.
Srikar Appalaraju

Chociaż tak samo jak ty nie lubię numeracji, mają one sens w adresowaniu warstw o ​​identycznych nazwach. Więc dla mnie zmiana nazwy później na małą aplikację jest teraz częścią przepływu pracy.
KMSTR

Istnieje o wiele bardziej elegancki sposób obsługi duplikatów nazw warstw. Zamiast tego podejścia do strzelby mogli wykryć, kiedy warstwa ma taką samą nazwę jak inna, i dołączyć liczbę. Więc wynik będzie coś podobnego filename.jpg, filename1.jpg.
posit labs

Odpowiedzi:


11

Aby dodać słowami: Ponieważ Export Layers to Filesjest uruchamiany przez jakiś skrypt, wszystko, co musiałem zrobić, to znaleźć ten skrypt, a następnie znaleźć funkcję, która zapisuje warstwy do plików, znaleźć, która część funkcji wykonuje prefiks numeracji i komentuje go.

Oto kroki -

  1. na Macu z systemem Lion, goto Applications > Adobe Photoshop CS5 > Presets > Scripts > Export Layers To Files.jsx(w systemie Windows jest to prawie ten sam katalog tylko w „program files / Adobe”
  2. Teraz w tym pliku masz linię 1030 i skomentuj ją.
  3. Również w wierszu 1031 zmień fileNameBody += "_" + layerName;na fileNameBody += layerName;usuwanie podkreślenia i nawiasu.
  4. Skomentuj linię 1049 (fileNameBody + = "_" + zeroSuppress (i, 4) + "s";)

Zapisz i zamknij plik. To powinno zakończyć pracę. Poniżej znajdują się linki źródłowe forum.

http://forums.adobe.com/message/3006825

http://forums.devshed.com/photoshop-help-88/removing-number-sequence-in-export-layers-to-files-in-cs5t-730612.html


Brzmi bardziej elegancko. I choć może to być oczywiste, chciałbym wspomnieć, że tak naprawdę zmienia to wbudowany skrypt, w którym powinieneś zachować stary kod (obie linie bez zmian - po prostu skopiuj i wklej ten, który musisz zmienić) . W ten sposób, jeśli kiedykolwiek będziesz potrzebować oryginalnej funkcjonalności, po prostu zamień dwa wiersze, które komentujesz.
Hanna

tak, spoko. Zawsze robię to jako domyślny krok. Jest to tak podstawowy krok, że nawet o nim nie wspomniałem. W każdym razie dzięki za wzmiankę o kompletności ...
Srikar Appalaraju,

1

Widzę twój problem. Nie znam żadnego sposobu na dostosowanie tego w Photoshopie, ale masz kilka alternatyw.

Po pierwsze, możesz grupowo zmienić nazwę wszystkich swoich plików za pomocą Adobe Bridge. (Narzędzia >> Zmiana nazwy partii) wprowadź opis zdjęcia tutaj

Jak widać, to okno zapewnia wiele innych opcji zmiany nazw plików oraz kontrolowania przedrostków i przyrostków. Minusem jest to, że jeśli potrzebujesz warstw w określonej kolejności zaraz po zapisaniu, most nie złapie tego, ponieważ tylko zmieniają nazwy plików, które są już zapisane.

Po drugie, napisałem skrypt jako odpowiedź na inne pytanie . (Które właśnie zaktualizowałem, aby uwzględnić potrzebę zapisywania warstw przy użyciu ich nazw warstw). Skrypt, choć nie można go bardzo dostosować, zapisuje wszystkie warstwy jako JPEG (z kontrolą jakości) lub PNG i zapisuje wszystkie warstwy jako pliki, używając ich nazw warstw. Daj mi znać, jeśli napotkasz jakiekolwiek problemy, udało mi się przetestować skrypt tylko na moim komputerze i działa idealnie.


Johannes twój skrypt jest dobry, ale na moim komputerze po uruchomieniu wyświetla się proces zakończony, ale nie daje żadnych wyników.

1

W przypadku Photoshop CC jest to linia 1020. Dodatkowo możesz kopiować, komentować i edytować linię pod nią, aby usunąć znak podkreślenia z nazwy.

    // fileNameBody += "_" + zeroSuppress(i, 4);
    // fileNameBody += "_" + layerName;
    fileNameBody += "" + layerName;

0

W przypadku wersji CC 2015.5 należy skomentować linie 1083 i 1084

    // fileNameBody += "_" + zeroSuppress(i, 4);
    // fileNameBody += "_" + layerName;

i zamień wiersze 1085–1088

  fileNameBody = fileNameBody.replace(/[:\/\\*\?\"\<\>\|]/g, "_");  // '/\:*?"<>|' -> '_'
    if (fileNameBody.length > 120) {
        fileNameBody = fileNameBody.substring(0,120);
    }

z następującymi

fileNameBody += "" + layerName;

0

W oknie dialogowym Warstwy jest zgodne z plikami , tuż obok Prefiksu nazwy pliku , odznacz Indeks . Zapobiega to dodawaniu numerów indeksów.


0

Jestem pewien, że udało mi się to rozgryźć. Dziękuję wszystkim, którzy napisali na tym forum, dając mi wskazówki, które były potrzebne, aby to zatrzymać. Kod jest więc następujący:

linia: 2179 var fileNameBody = fileNamePrefix; // fileNameBody + = " " + zeroSuppress (i, 4); // fileNameBody + = " " + layerName; fileNameBody + = layerName;

Pozwala to pozbyć się prefiksu dla większości nazw warstw. Problemem, z którym wielu z nas miało do czynienia, było to, że gdy warstwy były w grupach, po zapisaniu nadal miały prefiks. Aby to naprawić, musisz zmienić jeszcze jedną linię kodu:

linia: 2219 // fileNameBody + = "_" + zeroSuppress (i, 4) + "s";

Zasadniczo musisz skomentować ten kod, który powinien znajdować się pod „var fileNameBody = fileNamePrefix;” wiersz kodu. To powinno usunąć prefiks, nawet jeśli twoje warstwy są zgrupowane.

Jedyny kod, który musisz zmienić, to kod, który mam zakodować na czerwono.

Oświadczenie: numer wiersza w kodzie może się różnić w zależności od wersji programu Photoshop. Aby obejść ten problem, wystarczy użyć funkcji wyszukiwania aplikacji, aby wyszukać kod. Upewnij się, że usunąłeś „//”, bo inaczej nie znajdziesz tego, czego szukasz w kodzie.

Mam nadzieję, że pomogę komuś z tym.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.