Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Ίσως μη αμιγώς προγραμματιστικό θέμα αλλά έτσι το προσεγγίζω εγώ.

Προσπαθώ να κατεβάσω από σελίδες και να δημιουργήσω pdf, από πολλά τέτοια αρχεία (svgz). Δυστυχώς δεν έχω καταφέρει να τα κάνω batch convert, γιατί εμφανίζει ότι να' ναι στη μετατροπή. Ότι δοκίμασα έχει θέμα, ακόμα και το imagemagick.

Τελευταία προσπάθεια που κάνω είναι μέσα από κάποιον browser, γιατί βλέπω ότι τα εμφανίζει κανονικά, οπότε απομένει μόνο η μετατροπή ή η εκτύπωση σε pdf ένα προς ένα και μετά η ένωσή τους.

Καμία ιδέα προγραμματιστικά; Σε java δουλεύω, αλλά θα το παλέψω και με python αν χρειαστεί.

Μέσω selenium θα καταφέρω κάτι (η διαίσθηση λέει όχι, αλλά ρωτάω μπας και...); Ή να πάω με εφαρμογή τύπου autoit;

Δημοσ.

Η Java δεν έχει κάποι WebClient που να προσομοιώνει έναν browser και μετά να τραβήξεις "as jpeg" απο κει μέσα και στη συνέχεια convert ;

  • Like 1
Δημοσ. (επεξεργασμένο)
2 ώρες πριν, Lanike71 είπε

Καμία ιδέα προγραμματιστικά; Σε java δουλεύω, αλλά θα το παλέψω και με python αν χρειαστεί.

Με java μέσω της εφαρμογής σου δοκίμασες; Δηλαδή:

1. Να αποσυμπιέσεις το svgz που έχεις κατεβάσει. To svgz είναι συμπιεσμένο (gzip) svg. π.χ. δες: https://www.journaldev.com/966/java-gzip-example-compress-decompress-file ή κάτι αντίστοιχο. 

 Δες και εδώ: https://stackoverflow.com/questions/1063004/how-to-decompress-http-response/34709337 ή κάτι αντίστοιχο

2. Να μετατρέψεις το output του βήματος 1 (αποσυμπιεσμένο svg) σε jpeg ή png. π.χ. δες: https://gist.github.com/eclecticlogic/7890297https://stackoverflow.com/questions/37153914/how-convert-svg-to-jpeg-in-java ή κάτι αντίστοιχο.

3. Κατόπιν png2pdf ή jpeg2pdf. (εξαγωγή της φωτογραφίας σε αρχείο pdf). π.χ. https://stackoverflow.com/questions/8361901/how-can-i-convert-a-png-file-to-pdf-using-java ή κάτι αντίστοιχο

Ή μπορείς να δοκιμάσεις απ' ευθείας (βήματα 2+3) με διαδικασία svg2pdf. Δες εδώ: https://thinktibits.blogspot.com/2012/12/batik-convert-svg-to-pdf-java-example.html

Ό,τι λειτουργήσει καλύτερα.

Επεξ/σία από marios28
  • Like 1
Δημοσ. (επεξεργασμένο)

Τελικά το κατάφερα με selenium και geckodriver να το αποθηκεύσω σε .png. Οπότε η συνέχεια είναι εύκολη.

 System.setProperty("webdriver.gecko.driver","C:\\geckodriver.exe");
    	
 WebDriver driver = new FirefoxDriver();
 driver.get("https://mypage.svgz");

 // take a screenshot
 File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
 
  try {
        // save to file
		FileUtils.copyFile(scrFile, new File("c:\\tmp\\screenshot.png"));
	   } catch (IOException e) {
			
			e.printStackTrace();
		}

Η λύση βρέθηκε μετά από πολύ ψάξιμο στο stackoverflow.

Ευχαριστώ για τις απαντήσεις.

Επεξ/σία από Lanike71

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...