Announcement

Collapse
No announcement yet.

Multipage Tiff bzw. PDF in JScrollpage anzeigen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Multipage Tiff bzw. PDF in JScrollpage anzeigen

    Hallo zusammen,

    ich habe folgendes Problem:
    ich muss eine Lösung entwickeln, um Multipage Tiffs bzw. PDFs in einem JScrollPane anzuzeigen.
    Ich habe mir dazu die Java API for Advanced Imaging (JAI) ausgewählt.
    Für die erste Seite einer Multipage Tiff klappt das Anzeigen in einem JScrollPane auch soweit ganz gut. Nur wie iteriere ich am besten durch die restlichen Seiten und zeige diese auch noch an?
    Hierzu sei noch gesagt, dass ich die Tiffs von einem Documenten Management System über eine URL beziehe.
    Kann mir hier vielleicht jemand weiterhelfen?

    Mfg
    JavaNewbie

  • #2
    Wie bekommst du die Scrollpane in eine Webseite?
    Christian

    Comment


    • #3
      Originally posted by Christian Marquardt View Post
      Wie bekommst du die Scrollpane in eine Webseite?
      Die JScrollPane wird in einem JFrame (Swing) realisiert, welcher Eingabefelder für bestimmte Daten bereit stellt, anhand derer das entsprechende Dokument eindeutig identifizierbar ist und somit durch Betätigen eines Buttons vom Dokumenten Management System abgerufen werden kann.
      Nach dem Abruf des entsprechenden Dokumentes soll dieses dann in ein JScrollPane eingebettet werden, sodass man dann durch die Seiten scrollen kann.
      Die Frage ist jetzt, wie ich für eine mehrseitige Tiff-Datei (bzw. PDF-Datei) die Anzahl der Seiten bekomme, um darüberiterieren zu können und diese anzeigen zu können.

      Comment


      • #4
        Verschoben von Web -> Swing
        Christian

        Comment


        • #5
          http://www.velocityreviews.com/forum...-tiff-fax.html

          könnte helfen
          Christian

          Comment


          • #6
            Originally posted by Christian Marquardt View Post
            Besten Dank. werde es mal mit Imagero versuchen.
            Sieht vielversprechend aus. Auch die Dokumentation die es dazu gibt ;-)
            Was für JAI ja nicht unbedingt zutrifft.

            Comment


            • #7
              Habe jetzt eine (quick and dirty) Lösung mit der Java API for Advanced Imaging (JAI) realisiert, welche zumindest die erste Seite einer Multipage-TIFF Datei von einem entfernten System anzeigen kann.
              Wie ich aber die restlichen Seiten im JScrollPane anzeige, habe ich bisher nicht herausgefunden.
              Vielleicht hat jemand schon so etwas ähnliches gemacht und kann mir hier weiterhelfen.

              Code:
              import java.awt.image.RenderedImage;
              import java.net.MalformedURLException;
              import java.net.URL;
              
              import javax.media.jai.JAI;
              import javax.swing.JFrame;
              import javax.swing.JScrollPane;
              
              import com.sun.media.jai.widget.DisplayJAI;
              
              public class TIFFReadAndShow extends JFrame {
              
              	private static final long serialVersionUID = 1L;
              
              	public TIFFReadAndShow() {
              
              		URL url = null;
              		try {
              			// You have to provide a valid URL-String
              			// for a multipage tiff file on a remote system
              			url = new URL("http://www.example.com/multipage_tiff_example.TIF");
              		} catch (MalformedURLException e) {
              			// TODO: catch exception
              		}
              
              		// create a RenderedImage
              		RenderedImage image = JAI.create("url", url);
              
              		// create a DisplayJAI panel for embedding the image into it
              		DisplayJAI panel = new DisplayJAI(image);
              
              		// put the panel with the image in a JScrollPane
              		JScrollPane pane = new JScrollPane(panel);
              
              		// add the JScrollPane to the JFrame
              		this.add(pane);
              
              	}
              
              	public static void main(String[] args) {
              
                              // Proxysettings (specify your proxysettings)
              		System.setProperty("http.proxyHost", "proxy");
              		System.setProperty("http.proxyPort", "1234");
              
              		TIFFReadAndShow client = new TIFFReadAndShow();
              		client.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              		client.setVisible(true);
              		client.pack();
              
              	}
              }

              Comment

              Working...
              X