Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Bücher:

MATLAB und Simulink: Grundlegende Einführung f. Studenten

Studierende:
weitere Angebote

Partner:


Vermarktungspartner


Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Print, skalierung auf A4?

 

Torben___

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.03.2010, 11:33     Titel: Print, skalierung auf A4?
  Antworten mit Zitat      
Hallo,

ich hab ein figure aus einigen subplot, wenn ich dieses nun mit print egal ob als pdf, ps oder png, jpg exportiere, wird jeweils nur ein kleiner Bereich der Seite verwendet...

ich hätte allerdings gern, dass automatisch auf z.B. auf eine Komplette Din A4 Seite hochskaliert wird, sodass auch die Abstände zwischen den Subplot größer werden

Viele Grüße

Torben


s'stephansche

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.04.2010, 09:47     Titel:
  Antworten mit Zitat      
Hi,

du kannst Groesse, Ausrichtung etc. der figure definieren.
Etwa so:
Code:

figure1 = figure(...
        'PaperType','a4letter',...
        'PaperOrientation','Portrait',...
        'PaperUnits','centimeters', ...
        'ActivePositionProperty','Position', ....
        'PaperPosition',[0.63 0.63 19.72 28.41],...    
        'PaperSize',[20.98 29.68]);

 


Fuer deinen Fall musst du die PaperPosition anpassen. Ich uebernehme dabei immer die Werte die mir die GUI liefert. Anders hab ich es auch noch nicht hinbekommen.
Und so gehts:
figure-Fenster > File > PrintPreview > Layout > ....
hier alles einstelln (A4, etc) und dann 'FillPage'.
Die Positions werden dann aktualisiert und koennen in dein Skript uebernommen werden.
 
EccoBravo
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 64
Anmeldedatum: 12.08.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.05.2011, 11:47     Titel:
  Antworten mit Zitat      
Hallo,

ich habe selbes Problem.

Will ein figure mittels printpreview drucken.
habe dazu

Code:
set(gcf, 'PaperType', 'A4');
set(gcf, 'PaperOrientation', 'landscape');
set(gcf, 'PaperUnits', 'centimeters');
set(gcf, 'PaperPositionMode', 'auto');
set(gcf, 'PaperPosition', [0.2 0.1 29 20 ]);
printpreview;

gesetzt.

Er zeigt im Printvorschaufenster auch die Grafik an, jedoch ist der rechte Bildteil (vom Figure1) weggeschnitten.

Weiterhin ist im Printdialog zu sehen, dass die Zeile
Code:
set(gcf, 'PaperPositionMode', 'auto');

das Placement nicht auf "Auto (Actual size, Centered)"
gestellt hat. Es steht weiterhin auf "Use manual size and position"

Was kann ich machen, damit das gesamte Figure 1 incl. dem rechten Rand im Preview angezeigt wird.?

Vielen Dank für einen Tip

EB
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 10.952
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 11.05.2011, 12:53     Titel:
  Antworten mit Zitat      
Hallo EccoBravo,

Ich glaube zwar, dass dies nicht Dein Problem löst, aber zumindest klärt erstmal einen Punkt:
Code:
set(gcf, 'PaperPositionMode', 'auto');
set(gcf, 'PaperPosition', [0.2 0.1 29 20 ]);

Die obere Zeile setzt den PaperPositionMode auf 'auto', die untere setzt ihn danach gleich wieder manuell, so dass auch der Mode wieder auf 'manual' gesetzt wird. Die Zeilen widersprechen sich also.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
EccoBravo
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 64
Anmeldedatum: 12.08.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.05.2011, 13:09     Titel:
  Antworten mit Zitat      
Danke Jan,

auf Auto steht nun der Preview Dialog.
Aber nun sind re und li die Ränder vom Bild weggeschnitten.
Eine Zoom-, Stretch- oder AspectRatio-Funktion fehlt noch.
Danke

EB
Private Nachricht senden Benutzer-Profile anzeigen
 
gast x

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.04.2020, 09:50     Titel:
  Antworten mit Zitat      
Hallo Smile

ich hab auch eine Frage zu diesem Thema..

ich würde gerne mein eingelesenes und anschließend dupliziertes Bild als Din A4 ausgeben..
mein code:

bild = imread (‘hintergrund.png’);

b = repmat (bild, 10, 1);

c = b(‘PaperType’, ‘A4’);

imshow(c)




... die ‘ sind in Matlab natürlich gerade .. Weiss jemand wo das Problem liegt?
Wäre um hilfe sehr dankbar.. Keine Fehlermeldung.. aber es wird nur ein minimales kleines Fenster geöffnet von C welches nicht Din A4 gross ist und keine inhalt hat (weiß ist)
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 21.532
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 19.04.2020, 11:32     Titel:
  Antworten mit Zitat      
Hallo,

aus diesem Thread geht ja hervor, dass PaperType keine Eigenschaft des Bildes, sondern der Figure ist, siehe z.B. 28.04.2010, 09:47.
Und bitte nicht drei Beiträge zum selben Thema schreiben.

Danke und Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
gastt

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.04.2020, 12:04     Titel:
  Antworten mit Zitat      
Danke für die antwort..
Was bedeutet das?
Muss ich dann das Bild in eine Figure umwandeln? Oder bedeutet es dass es gar nicht geht?
Lg
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 21.532
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 19.04.2020, 12:10     Titel:
  Antworten mit Zitat      
Hallo,

das bedeutet, dass du eine Zeile voransetzen musst.
Code:
figure('PaperType','a4')

Das Bild ist immer in einer Figure.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
gaast

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.04.2020, 12:21     Titel:
  Antworten mit Zitat      
danke für die hilfe..
tut mir leid dass ich es jedoch nicht richtig implementieren kann..

bild = imread (‘hintergrund.png’);

B = repmat (bild, 10, 1);

figure (‘PaperType’ , ’a4’);

.... habe es zwar so ausprobiert aber dachte mir schon dass es nicht hinhaut ..
wie kann ich denn B die figure zuweisen?
weil hier fehlt ja wahrscheinlich die verbindung zwischen figure und dem duplizierten bild B
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 21.532
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 19.04.2020, 12:47     Titel:
  Antworten mit Zitat      
Hallo,

du musst die Zeile voransetzen statt sie unten anzuhängen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
gastt

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.04.2020, 17:01     Titel:
  Antworten mit Zitat      
wirklich sorry..
aber ich verstehe es nicht..
kannst du es für absolute anfänger wie mich erklären?
Auch wenn ich es voran schreibe stimmt es nicht:
das ist der ganze code:

clear
bild = imread (‘hintergrund.png’);
B = repmat (bild,10,1);
imtool (B)
figure (‘PaperType’ , ‘a4’);
C = B(‘PaperType’ , ‘a4’);
imtool (C)

... ich möchte nur, dass ich das duplizierte Bild (B) als Din A4 ausgeben und anschließend auch speichern kann..
kannst du mir nochmal helfen bitte?
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 21.532
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 19.04.2020, 17:18     Titel:
  Antworten mit Zitat      
Hallo,

der Befehl C = B(‘PaperType’ , ‘a4’); ist nicht sinnvoll und wird es auch nicht, wenn du es noch öfter versuchst.

Code:
figure('PaperType','a4')
bild = imread ('hintergrund.png');
b = repmat (bild, 10, 1);
imshow(b)


Wenn das Bild dann noch nicht die gesamte Figure ausfüllt, musst du Optionen wie 'Border' und 'InitialMagnification' in imshow anpassen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
gastt

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.04.2020, 17:28     Titel:
  Antworten mit Zitat      
okay vielen dank fuer die Hilfe.. nun.. ich weiss nicht aber es kommt eine fehlermeldung Sad... woran kann das liegen?

image.jpg
 Beschreibung:

Download
 Dateiname:  image.jpg
 Dateigröße:  7.59 MB
 Heruntergeladen:  22 mal
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 21.532
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 20.04.2020, 09:08     Titel:
  Antworten mit Zitat      
Hallo,

das sieht merkwürdig aus. Mal MATLAB neu starten.

Bitte generell Code oder Fehlermeldungen als Text posten.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen

Gehe zu Seite 1, 2  Weiter

Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.


goMatlab ist ein Teil des goForen-Labels
goForen.de goMATLAB.de goLaTeX.de


 Impressum  | Nutzungsbedingungen  | Datenschutz  | Werbung/Mediadaten | Studentenversion | FAQ | goMatlab RSS Button RSS


Copyright © 2007 - 2020 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
Partner: LabVIEWforum.de

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.