[elvystrac] r1945 - pdf rendering diagram added

  • From: elvys@xxxxxxxxxxxxxxxxxxxxxx
  • To: elvystrac@xxxxxxxxxxxxx
  • Date: Sun, 28 Feb 2010 20:56:36 +0100

Author: JirkaH
Date: 2010-02-28 20:56:36 +0100 (Sun, 28 Feb 2010)
New Revision: 1945

Modified:
   others/dokumentace/technicalGuide/architecture/0architecture.tex
   others/dokumentace/technicalGuide/architecture/6clientapp.tex
Log:
pdf rendering diagram added


Modified: others/dokumentace/technicalGuide/architecture/0architecture.tex
===================================================================
--- others/dokumentace/technicalGuide/architecture/0architecture.tex    
2010-02-28 19:30:26 UTC (rev 1944)
+++ others/dokumentace/technicalGuide/architecture/0architecture.tex    
2010-02-28 19:56:36 UTC (rev 1945)
@@ -83,7 +83,7 @@
 \tableofcontents
 \clearpage
 
-
+  
 \include{1preface}
 \include{2hardware}
 \include{3management}

Modified: others/dokumentace/technicalGuide/architecture/6clientapp.tex
===================================================================
--- others/dokumentace/technicalGuide/architecture/6clientapp.tex       
2010-02-28 19:30:26 UTC (rev 1944)
+++ others/dokumentace/technicalGuide/architecture/6clientapp.tex       
2010-02-28 19:56:36 UTC (rev 1945)
@@ -48,12 +48,24 @@
     Vzhledem k tomu, že tvorba obrázku v daném rozlišení z PDF souboru je 
poměrně náročná operace, bylo rozhodnuto generovat jednotlivé strany dokumentů 
v různých vláknech, čímž se 
     zajístí schopnost odezvy aplikace i při načítání PDF.
     
-    Načítání PDF tedy probíhá na žádost. Zobrazovací vlákno (GUI), které 
kešuje zobrazované stránky (pixmapy) vyvolá signál, když daná stránka v keši 
není. To vzbudí pracovní vlákno, které danou stránku vygeneruje a 
-    předá zobrazovacímu vláknu, ktéra jej vloží do paměti. Cache pixmap je 
globální pro celou aplikaci, její správu a tedy vymazávání starých dat má na 
starosti framework Qt. Samotné pracovní vlákno své data také cachuje,
+    Načítání PDF tedy probíhá na žádost. Zobrazovací vlákno (GUI, třída PDF 
Viewer), které cachuje zobrazované stránky (pixmapy) vyvolá signál, když daná 
stránka v cachi není. To vzbudí pracovní vlákno, které danou stránku vygeneruje 
a 
+    předá zobrazovacímu vláknu, ktéra jej vloží do paměti. Cache pixmap je 
globální pro celou aplikaci, její správu a tedy vymazávání starých dat má na 
starosti framework Qt. Samotné pracovní vlákno (PDF Filler)
+    své data také cachuje,
     tato cache je však omezené, menší velikosti a své data maže při přepnutí 
kategorií, tj. když daný dokument není zobrazen.
 
-    TODO nejake schema, jak to funguje!
+    Celý proces znázorňuje diagram \ref{kiosk_pdfrendering}.\\
 
+                \begin{figure}[!h]
+                 \label{kiosk_pdfrendering}
+                 \begin{center} 
+                 \includegraphics[width=1.0\textwidth]{imgs/pdf_rendering.png} 
          
+                  \caption{UML diagram renderování PDF dokumentů}
+                \end{center}
+                \end{figure}    
+
+    Vzhledem k tomu, že je celý proces asynchronní, a že typicky přijde více 
\verb!paintEventů! než se stihne daná stránka načíst, je nutné kontrolovat i po 
načtení zda stránka v globální
+    pixmap je či není. Vkládání do cache si vyžaduje změnu reprezentace 
obrázku, což je poměrně drahá operace, a proto je výhodnější tento způsob. 
+
    \subsubsection{Zobrazení v náhledech a zvětšování}
     PDF dokumenty jsou ve výchozím zobrazení zobrazeny jako náhledy zvolených 
stran (většinou prvních, to však lze ve webové aplikaci měnit). Prostor, ve 
kterém je dokument zobrazen je dán pozicí, na kterou je
     naplánován. Dle požadavků uvedeným v \textit{Analýze} je nutné, aby byl 
při zobrazování vždy zachován poměr stran, tj. nedocházelo k deformaci. Po 
načtení první strany se tedy daná pozice vizuálně zmenší,


Other related posts:

  • » [elvystrac] r1945 - pdf rendering diagram added - elvys