Skip to main content

Dateigröße eines PDF aus PDF-Kanal

Comments

6 comments

  • Zendesk API User
    Author: MarcusDau - 10/4/2011 12:42

    Das kannste doch einfach per Java lösen:

    File file = new File(pathToFile);

    // Get the number of bytes in the file

    long size = file.length();

    Dann noch ein wenig aufhübschen (hier nicht schön, aber es geht):

    DecimalFormat decFormatter = new DecimalFormat("####");

    if (size >= 1073741824)

    {

      return decFormatter.format(java.lang.Math.round(size / 1024f / 1024 / 1024 * 100) / 100) + " GB";

    }

    else if (size >= 1048576)

    {

      return decFormatter.format(java.lang.Math.round(size / 1024f / 1024 * 100) / 100) + " MB";

    }

    else if (size >= 1024)

    {

      return decFormatter.format(java.lang.Math.round(size / 1024f * 100) / 100) + " kB";

    }

    else if (size == 1)

    {

      return decFormatter.format(java.lang.Math.round(size * 100) / 100) + " Byte";

    }

    else if (size > 0 && size < 1024)

    {

      return decFormatter.format(java.lang.Math.round(size * 100) / 100) + " Bytes";

    }

    else

    {

      return "0 Bytes";

    }

    Grüße

    Marcus

    0
  • Zendesk API User
    Author: mkrohmann - 10/4/2011 12:51

    Danke für Deine Antwort!

    Kann ich das denn auch zum Zeitpunkt der Generierung? Die ausgelieferte Seite ist eine reine HTML-Seite, also keine Dynamik per Java möglich.

    Grüße

    Michael

    0
  • Zendesk API User
    Author: MarcusDau - 10/4/2011 13:00

    Vielleicht geht das über nen Beanshell-Script? Erst den pdf-Kanal generieren lassen, dann ist das pdf ja schon mal da. Und dann dieses im Script einlesen mit der obigen Methode.

    Ist nur ne Idee. Keine Ahnung, ob es geht. Gibt bestimmt was noch viel einfacheres...

    0
  • Zendesk API User
    Author: stephan - 10/5/2011 13:14

    In der Regel wird der HTML-Kanal vor dem PDF-Kanal erzeugt, so dass die Dateigröße der PDFs in diesem Fall zum Generierungszeitpunkt noch nicht bekannt ist. Eine einfache Lösung des Problems existiert leider nicht, bzw. nur für PDFs die im Mediastore liegen - was hier ja leider nicht der Fall ist.

    In Ihrem Fall würde man wahrscheinlich zwei getrennte Generierungen durchführen, einmal den PDF Kanal und immer danach den HTML Kanal, so dass sichergestellt ist, dass die PDFs bereits generiert wurden.

    Dadurch ist es dann möglich in den Templates des HTML-Kanals inline oder mit Script die Dateigrößen der PDFs zu ermitteln.

    0
  • Zendesk API User
    Author: MarcusDau - 10/5/2011 13:18

         Genau das war mein Vorschlag in dem Beitrag darüber! Prima, dann geht das ja doch!

    0
  • Zendesk API User
    Author: mkrohmann - 10/10/2011 1:33

    Perfekt, vielen Dank!

    Grüße

    Michael

    0

Please sign in to leave a comment.