Bildbearbeitung mit gleichbleibendem Seitenverhältnis ausdrucken

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von vb-checker.

    Bildbearbeitung mit gleichbleibendem Seitenverhältnis ausdrucken

    Hallo,
    ich habe mal eine Frage:
    Ich habe ein bearbeitetes Bild, was 2540 X 2752 Pixel groß ist.
    Das muss ich jetzt ausdrucken, allerdings habe ich dort nur Standarteinstellungen wie 20 x 25 Zentimeter, wie bekomme ich das denn mit dem gleichen Seitenverhältnis hin?
    Oder wenn ich das beim Müller (Drogeriekette, ausdrucken an einem Terminal möglich, Verhältnis muss auch hier aus Standartverhältnissen gewählt werden) ausdrucken möchte, wie bekomme ich das hin?
    Stehe grade echt aufm Schlauch...
    Danke euch schon mal
    und ein schönes Wochenende noch ;)
    Suscurtl
    Du möchtest ein relativ quadratisches Bild auf ein recheckiges Blatt drucken?
    Am besten mach in deinem Glas unten ein Loch und füll es auf :)

    Könntest du vielleicht sagen, wie das Bild ungefähr aussieht. Weil das Seitenverhältnis zu behalten wird oder kann etwas schwierig werden. Falls ich mich irre.. ich drucke nicht viel *g*..
    Mit folgendem Beispiel lässt sich so etwas bewerkstelligen:

    VB.NET-Quellcode

    1. Dim file As String = "C:\test.jpg"
    2. Dim Img As Image = Image.FromFile(file)
    3. Dim img_width As Double = Img.Width
    4. Dim img_height As Double = Img.Height
    5. Dim img_factor As Double = img_width / img_height
    6. Do While img_width > 400
    7. img_width -= 1
    8. img_height = img_width / img_factor
    9. Loop
    10. Do While img_height > 300
    11. img_width -= 1
    12. img_height = img_width / img_factor
    13. Loop
    14. Dim bmp_resized As New Bitmap(CInt(img_width), CInt(img_height))
    15. Dim gr As Graphics = Graphics.FromImage(bmp_resized)
    16. gr.InterpolationMode = Drawing2D.InterpolationMode.Bilinear
    17. gr.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
    18. gr.DrawImage(Image.FromFile(file), -1, -1, CInt(img_width), CInt(img_height))
    19. gr.Dispose()
    20. PictureBox1.Image = bmp_resized


    Du musst nur die Maximale Größe in den Schleifen bestimmen, und das Image (System.Drawing.Printing.PrintDocument) drucken

    mfG

    Derfuhr

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Derfuhr“ ()

    Der Haken muss weg sein, damit dein Bild nicht angepasst wird (bei meinem Beispiel sieht man die grauen Balken oben und unten, weil das Bild nicht hoch genug für das Blatt ist).
    Bilder
    • unbenannt.png

      187,45 kB, 942×578, 132 mal angesehen

    Skybird schrieb:

    Das sind ja Ubisoftmethoden hier !