Domanda

Sono stato un grande fan di MediaWiki e di editor di testo simili basati su wiki. Mi piace la possibilità di aggiungere rapidamente testo, collaborare e condividere. Tuttavia, c'è sempre la necessità di un output di stampa ben formattato. Cose come intestazioni e piè di pagina (che dicono ciò che voglio che dicano), interruzioni di pagina, margini, ecc.

La maggior parte delle soluzioni che ho visto comportano una sorta di conversione in un formato intermedio di supporti di stampa (forse MediaWiki in Microsoft Word o forse alcuni script personalizzati che generano un PDF dal contenuto di una pagina Web (con molti riferimenti codificati).

Esiste una soluzione più generica per questo problema? Qualche framework che cerchi di unire HTML e contenuto Web in generale in un formato di output dei supporti di stampa?

Qualsiasi soluzione, discussione relativa ai pro o ai contro, o qualunque cosa sia la benvenuta.

Grazie!

Aggiornamento: penso che i CSS mi porteranno così lontano anche se ... Ho usato i CSS per output di tipo simile (MediaWiki per impostazione predefinita ha un formato di stampa che nasconde gran parte delle cose della barra di navigazione ). Pensa a un articolo di MediaWiki però: immagina di essere in grado di modificare un tag nel contenuto o qualcosa di simile e ora il mio margine è di 1 pollice anziché 0,5 pollici. È più in linea con ciò a cui sto puntando.

È stato utile?

Soluzione

Potresti aver sentito parlare di PediaPress , una società che ha realizzato un "wiki per stampare " (ovvero PDF, ma anche ODF) si occupano della Wikimedia Foundation. (Vedi " Wikis Go Printable " .) Il loro codice è progettato per funzionare con MediaWiki ed è open source .

Ma! È anche meglio di così. Dai un'occhiata a questo bookmarklet . Puoi usarlo per creare PDF o ODF di qualsiasi pagina MediaWiki accessibile al pubblico (forse ha bisogno che anche l'API sia abilitata ...). E puoi raggruppare più pagine, da un singolo MediaWiki o più MediaWikis, in un singolo documento. È davvero fantastico nel mio libro. :)

ETA: PediaPress ha svolto un lavoro significativo nel rendere qualcosa davvero bello da leggere. Non è solo l'equivalente della versione stampabile di MediaWiki convertita in PDF.

Altri suggerimenti

http://www.princexml.com/

potrebbe essere qualcosa per te. Converte le pagine xml e html in documenti pdf.

L'uso di stampa di file CSS è un approccio davvero semplice per riformattare le pagine per la stampa.

Molte persone ricorrono al PDF perché può essere più potente e più facile.

Tuttavia, per la maggior parte delle cose, penso che il markup CSS sia più semplice e più semplice.

Guarda l'origine delle pagine in StackOverflow e vedrai i riferimenti a media = " print " (print.css) - un insieme di stili applicati solo quando un browser stampa la pagina .

<link href="/Content/print.css" rel="stylesheet" media="print" type="text/css" />

Puoi usarli per nascondere barre di navigazione, annunci (o mostrare annunci diversi). Effettua una paginazione di base, ecc.

Se hai bisogno di un maggiore controllo su cose come i margini, devi uscire dal browser (PDF, Word, XPS, ecc.)

Ho scritto un Convertitore da MediaWiki a LaTeX che cerca di mantenere la struttura del documento del testo sorgente. Il documento viene quindi composto con pdflatex per produrre un documento impaginato di altissima qualità. Il markup matematico è reso direttamente da LaTeX, quindi le equazioni sembrano grandi. Il documento / foglio di stile LaTeX è configurabile da comandi specializzati nel wiki per controllare direttamente margini, layout di pagina, font, pacchetti extra e così via. Questo rientrerebbe nella tua seconda categoria di uno script personalizzato piuttosto che in un framework generico.

Ce ne sono molti altri, come Extension: Pdf_Export che utilizza htmldoc . Sebbene sia più generale, fa un pessimo lavoro di impaginazione e crea molte vedove e orfani, non fa una giustificazione ottimale del testo e non fa indici, figure, riferimenti personali, ecc. Inoltre, se usi < ; math > markup in MediaWiki include solo i file PNG a bassa risoluzione.

princexml è specializzato in MediaWiki e produce documenti di bell'aspetto, ma non è disponibile in Licenza gratuita. Poiché si tratta di un prodotto a sorgente chiuso, la tua capacità di controllare l'output è limitata.

In generale, usa gli stili di stampa CSS + alcuni strumenti da pagina Web a PDF ( Chrome senza testa , Electron , wkhtmltopdf , Prince XML o solo la funzione di stampa su PDF del browser Web se non è necessario automatizzarla).

Specificamente per MediaWiki, estensione ElectronPdfService fa questo per te. (Inoltre, gli stili di stampa sono in fase di riscrittura in questo momento; ricontrolla in un mese o due per una migliore presentazione.)

<style type="text/css">
    @media print {
        /***css rules for print mode ***/
        aside#sidebar, header[role="banner"], footer, #comments, #respond, #header-v1, .breadcrumbs, #footer-v1,.topbar-v1,.header-v1,.fcbtnremove {
            display: none;
        }

        .container.content-xs {
            width: 98%;
            margin: 0px;
            padding: 0px;
        }
    }

    @media screen {
        /***css rules for screen , it is sometiems opposite of print mode ***/
        #header-v1, .breadcrumbs, #footer-v1,.topbar-v1,.header-v1 {
            display: block;
        }
    }

    table td , table th{text-align:center;vertical-align:middle}
</style>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top