hilfdirselbst.ch
Facebook Twitter gamper-media
CL
Beiträge: 42
13. Jan 2005, 15:51
Beitrag #1 von 8
Bewertung:
(1955 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[VB CS] Wie bekomme ich die Seitengröße heraus?


Ich würde gerne mit Page Bounds oder so ähnlich (wie bei Page items mit geometric bounds) die Seitengröße auslesen, hat jemand dafür ein Beispiel? Irgendwie hab ich die korrekte Syntax nicht gefunden... Top
 
X
Gerald Singelmann  M  p
Beiträge: 6178
13. Jan 2005, 16:00
Beitrag #2 von 8
Beitrag ID: #136116
Bewertung:
(1955 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[VB CS] Wie bekomme ich die Seitengröße heraus?


CL,

die Seitengröße, genauer die Seitenhöhe und die Seitenbreite sind properties der Document Preferences.
Ich kann kein visual basic, aber es müsste in etwa mydoc.preferences.pagewidth = 21; sein. Das ist komplett aus den Fignern gesogen, zeigt aber vielleicht, wo in der Spezifikation das zu finden ist.

In Apple Skript wäre es "Set page width of document preferences of active document to 210"

Viel Erfolg

Mit freundlichem Gruß
Gerald Singelmann

-----------------------------------------
http://www.impressed.de
als Antwort auf: [#136113] Top
 
Anonym
Beiträge: 22827
13. Jan 2005, 16:04
Beitrag #3 von 8
Beitrag ID: #136118
Bewertung:
(1955 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[VB CS] Wie bekomme ich die Seitengröße heraus?


Ein Dokument muß in InDesign geöffnet sein.

Dim mInD as InDesign.Application
Dim mPub as InDesign.Document
Dim mPage as InDesign.Page
Dim mPageBounds as Variant

Set mInD=GetObject("","InDesign.Application.3.0")
Set mPub=mInD.ActiveDocument
Set mPage=mPub.Pages.Item(1)
mPageBounds=mPage.Bounds

'was du suchst findest du hier:
MsgBox "Seitenhöhe: " & mPageBounds(2)

Gruß

Marius
als Antwort auf: [#136113] Top
 
CL
Beiträge: 42
13. Jan 2005, 16:33
Beitrag #4 von 8
Beitrag ID: #136125
Bewertung:
(1955 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[VB CS] Wie bekomme ich die Seitengröße heraus?


Danke erstmal für die Antworten!
Ich vergaß zu erwähnen, dass ich VBScript benutze und nicht direkt VB, aber der letzte Beitrag von Marius hat mir geholfen - ich habe immer vergeblich versucht die "Page" zu initialisieren. So siehts dann letztendlich in VBScript aus für InDesign CS 3.01:

Set myInDesign = CreateObject("InDesign.Application.CS")
Set myDocument = myInDesign.Documents.Item(1)
Set myPage = myDocument.Pages.Item(1)

PageBounds = myPage.Bounds
PgY1 = PageBounds(0)
PgX1 = PageBounds(1)
PgY2 = PageBounds(2)
PgX2 = PageBounds(3)
als Antwort auf: [#136113] Top
 
CL
Beiträge: 42
13. Jan 2005, 16:51
Beitrag #5 von 8
Beitrag ID: #136132
Bewertung:
(1955 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[VB CS] Wie bekomme ich die Seitengröße heraus?


Dann stell ich doch gleich mal eine Anschlussfrage, wie kann ich feststellen, ob "myDocument.Selection.Item(1)" existiert? Also falls jemand vergisst ein Objekt auszuwählen und das Script startet, möchte ich eine Fehlermeldung erzeugen (da ich nur auf selektierte Objekte etwas anwenden möchte). Das müsste doch eigentlich mit "on error goto" funktionieren, oder?
als Antwort auf: [#136113]
(Dieser Beitrag wurde von CL am 13. Jan 2005, 16:55 geändert)
Top
 
Anonym
Beiträge: 22827
13. Jan 2005, 16:57
Beitrag #6 von 8
Beitrag ID: #136136
Bewertung:
(1955 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[VB CS] Wie bekomme ich die Seitengröße heraus?


IF myDocument.Selection IS Nothing THEN
oder
IF myDocument.Selection.Coun=0 THEN

Gruß

Marius
als Antwort auf: [#136113] Top
 
Anonym
Beiträge: 22827
13. Jan 2005, 16:59
Beitrag #7 von 8
Beitrag ID: #136137
Bewertung:
(1955 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[VB CS] Wie bekomme ich die Seitengröße heraus?


sorry Ich meine natürlich:
If myDocument.Selection.Count=0 Then ....
als Antwort auf: [#136113] Top
 
CL
Beiträge: 42
13. Jan 2005, 17:52
Beitrag #8 von 8
Beitrag ID: #136164
Bewertung:
(1955 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[VB CS] Wie bekomme ich die Seitengröße heraus?


Ja, wunderbar, funktioniert ;-)
als Antwort auf: [#136113] Top
 
X