Dokumentstrukturkonventioner - Document Structuring Conventions
Document Structuring Convention , eller DSC , er et sæt standarder for PostScript , der er baseret på brugen af kommentarer , som primært angiver en måde at strukturere en PostScript-fil på og en måde at eksponere denne struktur på en maskinlæsbar måde. En PostScript-fil, der overholder DSC, kaldes et overensstemmende dokument .
Behovet for en struktureringskonvention opstår, da PostScript er et Turing-komplet programmeringssprog. Der er således ingen garanteret metode - kort for faktisk at udskrive dokumentet - til at gøre ting som at bestemme, hvor mange sider et bestemt dokument er langt, eller hvor stort en given side er, eller hvordan man springer til en bestemt side. Tilføjelsen af struktur, med DSC-kommentarer, der afslører denne struktur, hjælper med at give en måde for f.eks. En intelligent udskriftsspooler til at have mulighed for at omarrangere siderne til udskrivning eller til et sidelayoutprogram til at finde afgrænsningsboksen til en PostScript-fil bruges som et grafisk billede. Samlet kaldes ethvert sådant program, der tager PostScript-filer som inputdata, en dokumenthåndtering .
For at en PostScript-udskriftsfil korrekt destilleres til PDF ved hjælp af Adobe-værktøjer, skal den være i overensstemmelse med grundlæggende DSC-standarder.
Nogle DSC-kommentarer tjener en anden funktion, der angiver en måde at fortælle dokumenthåndteringen om at gøre bestemte ting som at indsætte en skrifttype eller anden PostScript-kode (samlet kaldet ressourcer ) i filen. DSC kommentarer, der tjener denne anden funktion er mere beslægtet med forbehandling direktiver og er ikke rent kommentarer. Dokumenter, der bruger den slags DSC-kommentarer, kræver, at en fungerende dokumenthåndtering kommer ud som beregnet; at sende dem direkte til en printer fungerer ikke.
DSC er grundlaget for indkapslet PostScript ; EPS-filer er i overensstemmelse med dokumenter med yderligere begrænsninger.
Sættet med DSC-kommentarer kan udvides med en mekanisme kaldet Open Structuring Conventions, som sammen med EPS-specifikationen danner grundlaget for tidlige versioner af Adobe Illustrator Artwork -filformatet.
Et overblik over DSC
Den grundlæggende forudsætning for DSC er adskillelsen af prolog (statiske definitioner) og script ( kode, der påvirker jobspecifik udskrivning) plus afvisning af visse PostScript- operatører, der anses for upassende til sidebeskrivelser . Dette sikrer et grundlæggende niveau af forudsigelighed i PostScript-koden og danner således grundlaget for dokumenthåndtering.
Et valgfrit, ekstra lag af dokumentadministration tilvejebringes ved at adskille scriptet i et dokumentopsætningsafsnit , nul eller flere funktionelt uafhængige sider og en valgfri trailer (oprydningskode). ("Nul sider" i DSC betyder normalt "en side uden brug af PostScript 'showpage' -operatøren.) Den funktionelle uafhængighed mellem sider plus afvisning af flere PostScript-operatører i sidesektionen danner grundlaget for sideuafhængighed , som gør det muligt at omarrangere sider og få adgang til dem uafhængigt og tilfældigt.
Denne pålagte struktur eksponeres derefter ved at afgrænse PostScript-filen med DSC-kommentarer , som normalt begynder med to procenttegn efterfulgt af et nøgleord. Nogle nøgleord skal følges af et kolon, et valgfrit mellemrumstegn og derefter en række argumenter .
Endelig markeres dokumentet som konformt ved at starte det med en kommentar, der starter med “%! PS-Adobe-” efterfulgt af DSC-versionsnummeret.
Sektioner af genanvendelig PostScript-kode kan moduleres til procsets (proceduresæt svarende til funktionsbiblioteker på andre programmeringssprog) for at lette genereringen af PostScript-kode. Procsets og andre PostScript-ressourcer (for eksempel skrifttyper) kan udelades fra selve PostScript-filen og henvises eksternt til ved en direktivlignende DSC-kommentar. sådan ekstern henvisning kan dog kun fungere med en dokumenthåndtering, der forstår sådanne DSC-kommentarer.
DSC version 3.0 blev frigivet den 25. september 1992. Specifikationen siger, "Selvom DSC-kommentarerne er et lag af kommunikation ud over PostScript-sproget og ikke påvirker det endelige output, betragtes deres anvendelse som en god PostScript-sprogprogrammeringsstil. " Således udsender de fleste PostScript-producerende programmer DSC-kompatible kommentarer sammen med koden, selvom nogle af disse programmer faktisk ikke producerer overensstemmende dokumenter.
Eksempel
Et DSC-konform dokument (dette genereret af dvips ) kan begynde:
%!PS-Adobe-2.0
%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
%%Title: texput.dvi
%%Pages: 1
%%PageOrder: Ascend
%%BoundingBox: 0 0 612 792
%%DocumentPaperSizes: Letter
%%EndComments
som har følgende betydning:
- markerer dokumentet som i overensstemmelse med version 2.0 af DSC
- identificerer det PostScript-producerende program som dvips 5.95a
- identificerer dokumentets titel
- fortæller dokumenthåndtering, at dokumentet består af en side
- fortæller dokumenthåndtereren, at sider er uafhængige (dvs. ikke i speciel rækkefølge) og vises i stigende rækkefølge i dokumentet; i dette eksempel, da dokumentet kun består af en side, er disse oplysninger normalt ikke relevante, men det er nødvendigt, hvis yderligere sider skal indsættes af en dokumenthåndtering
- fortæller dokumentadministratoren koordinaterne målt i PostScript- punkter for afgrænsningsfeltet for alle sider taget sammen; 0 0 612 792 er koordinaterne for en US Letter- størrelse side
- fortæller dokumenthåndteringen, hvilken slags papirstørrelser der bruges i hele dokumentet; i dette eksempel anvendes kun en størrelse, nemlig US Letter-størrelse
- markerer afslutningen på prologen