[ FranjoZG @ 07.12.2017. 09:25 ] @
Delphi XE 10.1

Imam sliku sa scaner-a.
Veličina slike: W: 1903, H: 188. Stvaran veličina: 161.12 x 15.92 mm

Slika može biti bmp ili jpg.
Da bih iz Width i Hight dobio veličinu u mm (koliko sam shvatio) treba mi DPI, ali kako dobiti DPI?
Rovao po netu-ništa iskoristivo. Pronašao sam:
Code:

try
    Result := 0;
    Stream := TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);
    Stream.Position := 38;
    if Stream.Read(Data, 2) = 2 then
    begin
      A := Data;
      Result := Round(A / 39.370079);
    end;
  finally
    Stream.Free;
  end;


meni vraća 0 za bmp koji je iz scanera. Za sliku koja je pohranjena iz gimp-a očita podatke ispravno.
Gimp za bmp iz scaner-a uredno očita veličinu.
[ savkic @ 07.12.2017. 09:43 ] @
> Da bih iz Width i Hight dobio veličinu u mm (koliko sam shvatio) treba mi DPI, ali kako dobiti DPI?

Code:

var
  HorPictureRes, VerPictureRes: Double; // Rezolucija slike u tackama po mm
  BmpStream: TStream;
  FileHeader: TBitmapFileHeader;
  Info: TBitmapInfo;
begin
  // saznajemo rezoliciju slike, ova informacija se cuva u headeru bitmap fajla
  BmpStream := TFileStream.Create(AFileName, fmOpenRead or fmShareDenyNone);
  try
    BmpStream.Read(FileHeader, SizeOf(FileHeader));
    BmpStream.Read(Info, SizeOf(Info));
    // Broj piksela po metru delimo sa 1000 kako bi dobili broj piksela po mm
    VerPictureRes := Info.bmiHeader.biYPelsPerMeter / 1000;
    HorPictureRes := Info.bmiHeader.biXPelsPerMeter / 1000;
  finally
    BmpStream.Free;
  end;

  // Ako u fajlu bitmape nije postojala informacija o rezoluciji onda uzimamo standardnu rezoluciju slike od 72 piksela po incu
  if VerPictureRes <= 0 then
    VerPictureRes := 72 / 25.4;
  if HorPictureRes <= 0 then
    HorPictureRes := 72 / 25.4;
  ...
end;



> meni vraća 0 za bmp koji je iz scanera. Za sliku koja je pohranjena iz gimp-a očita podatke ispravno. Gimp za bmp iz scaner-a uredno očita veličinu.

Štos je što upis rezolucije u header bitmmape nije obavezan pa većina programa ostavi prazno, otuda ovaj drugi blok sa pretpostavkom od 72dpi.

[Ovu poruku je menjao savkic dana 07.12.2017. u 11:10 GMT+1]
[ FranjoZG @ 07.12.2017. 09:59 ] @
Hvala. Probat ću.

Nedostaje ti definicija var "Info"
Code:

 BmpStream.Read(Info, SizeOf(Info));


što je "Info" ?

Zanemari, našao: Info: TBitmapInfo;

A što je s JPG? Ova funkcija ne radi na JPG file-u?

[Ovu poruku je menjao FranjoZG dana 07.12.2017. u 11:13 GMT+1]
[ savkic @ 07.12.2017. 10:11 ] @
> Nedostaje ti definicija var "Info"

Info: TBitmapInfo;
[ FranjoZG @ 07.12.2017. 12:01 ] @
Za BMP mi daje ispravne podatke.
Kako ih dobiti za JPG?
[ savkic @ 07.12.2017. 13:00 ] @
>Za BMP mi daje ispravne podatke. Kako ih dobiti za JPG

Mislim da jpeg header nema tako nesto, odnosno jedino onaj EXIF prateci sadrzaj bi mogao pomoci. Probaj neki EXIF viewer i da li se vide ti podaci.
[ FranjoZG @ 07.12.2017. 14:24 ] @
Negdje mora postojati jer mi Gimp daje isprave podatke o stvarnoj veličini slike u mm.
[ Milan Milosevic @ 07.12.2017. 16:15 ] @
Konvertuj sliku iz jpg u bmp, pa radi sa bmp.
[ savkic @ 07.12.2017. 16:24 ] @
Citat:
FranjoZG:
Negdje mora postojati jer mi Gimp daje isprave podatke o stvarnoj veličini slike u mm.


U pravu si, izgleda da ipak ima (vidim da Windows prijavljuje HRes i VRes kad se ide na properties slike). Kad dobijes rezoluciju dalje je isti princip za racunanje kao kod bitmape.
Quick search daje ovaj link sa kodom za jpeg, pa vidi da li radi u tvom slucaju:
https://stackoverflow.com/ques...ion-without-decoding-the-image
[ MajorFatal @ 08.12.2017. 00:01 ] @
Citat:
FranjoZG:
Negdje mora postojati jer mi Gimp daje isprave podatke o stvarnoj veličini slike u mm.


Nije to neka specijalno stvarna veličina slike u mm, nego više kao predvidjena veličina kad se odštampa pod tim i tim kvalitetom štampe a što označava mera dpi (drops per inch - kapljica koje će štampač da ispljucka na papir, podlogu) tako da ako za istu sliku promeniš vrednost dpi što se lako radi u bilo kom grafičkom programu, program će te izvestiti koja je nova predviđena "stvarna" veličina slike u mm (kad se odštampa).

Na primer ako ti je slika kvaliteta 72dpi izvesti te da je "stvarna" veličina na koju možeš da odštampaš 1,5x2 metra, ako povećaš vrednost na 300dpi za tu istu sliku izvestiće te da je veličina 40x50 Cm na primer, 300dpi je najčešća vrednost koju traže za štampu ali to se odnosi na novine koje čitaš sa rastojanja ne većeg od pola metra tj. pred nosom su ti, ako bi trebalo da odštampaš bilbord pretpostavljam da možeš da ostaviš i 72 dpi, dpi ne mešaj sa ppi (pixel per inch) mada nisam siguran da nije ista vrednost u pitanju (služi za odredjivanje prikaza na ekranu).

Ako ti je za neku utehu i od pomoći mislim da je za bmp i jpg identična vrednost dpi, to jest zavisi samo od rezolucije same slike ne i od kvaliteta i količine informacija koju nosi...znači ako je slika 1024x800 pixela rezolucije za istu vrednost dpi izvestiće te da možeš da štampaš isti format a da bude lepo vidljiv bez obzira da li je slika bmp ili jpg formata (hm, možeš i 72 dpi da štampaš za novine ali će slika biti vidljivo zrnasta/pikselizovana).

Citat:
Milan Milosevic:
Konvertuj sliku iz jpg u bmp, pa radi sa bmp.


Jpg je kompresovana verzija slike iz bmp ili nekog sličnog raw formata i to je u pitanju lussy kopresija a ne lusseless tj. ona sa gubitkom informacija a ne varijanta koja ne gubi podatke, tako da ne može tek tako da je vrati u bmp varijantu, bar ne a da zadrži info koji je slika originalno imala, za samu vrednost dpi izgleda nije bitno ali za nešto drugo može da bude, a i čudi me da program koji imam prikazuje iste dimenzije za štampu obe varijante slike, skoro sam slao nešto nekom štamparu tvrdi da je bolje kad pošaljem bmp varijantu iste slike nego jpg...

I da dodam da sam bio i na nekim grafičkim forumima ali da nigde nisam pročitao ništa smisleno o rezoluciji oka, ekrana, slike na ekranu i slike u štampi...
[ Predrag Supurovic @ 08.12.2017. 09:15 ] @
Najbolje bi bilo da ako je izvodljivo skeniranu sliku snimiš u tiff foramtu jer tada sigurno dobijaš potreban podatak. Kao što neko već reče, BMP i JPG po definiciji ne moraju da sadrže podatak o gustini, već samo dimenzije u tačkama. Da li ćeš dobiti podatak o gustini u BMP ili JPG i šta će tu da piše to zavisi samo od programa koji te datoteke kreira. U svakom slučaju nije baš preporučljivo na to se oslanjati.

> I da dodam da sam bio i na nekim grafičkim forumima ali da nigde nisam pročitao ništa smisleno o rezoluciji oka, ekrana, slike na ekranu i slike u štampi...

U stvari je stvar jednostavna samo se komplikuje zbog nezgodne terminologije,odnosno raznih značenja reči rezolucija.

Evo ukratko:

Definičimo rezoluciju kao gustinu tačaka na jedinici površine. Najčešće se izražava kao dpi (dots per inch).

Dimenzije slike se izraćavaju u broju piksela po visini i širini slike.

Kada znamo dimenzije i rezoluicju ulazne slike, to znači da možemo da odredimo njene tačne dimenzije u centimetrima. Ovo ima smisla kod materijala koji zaista digitalizujemo sa nekog predloška koji zaista ima fizičke dimenzije. Ako isti predložak digitalizujemo većom rezolucijom, dobićemo veći broj tačaka po jedinici površine a rezultat će biti veće dimenzije slike u pikselima. Rezolucija digitalizovane slike je nadalje bitna SAMO ako nam je potrebno da rekreiramo kopiju tačnih fizičkih dimenzija. U ostalim slučajevima nam je rezolucija nebitna.

Kod prikaza digitalizovane slike bitna je rezolucija medija na kome je prikazujemo. Ako nam je potrebno prikažemo sliku zadatih dimenzija onda zait amoramo da znamo rezoluciju slike da bismo na osnovu te rezolucije i dimenzije slike i rezolucije medija na kome prikazujemo izracunali koliko sliku treba da smanjimo ili povećamo da bi prikaz bio zadatih dimenzija.

Međutim ako nam tačne dimenzije nisu bitne, već ćemo sliku prikazivati proizvoljnom veličinom, rezolucija nije bitna. Mnogo su bitnije dimenzije slike odnosno da su vće ili jednake dimenzijama potrebnim za prikaz.

Na primer, ako uzmemo sliku rezolucije 600 dpi a koja ima dimenzije 10 x 10 tačaka, to znači da su njene fizičke dimenzije veoma male. Ma koliko velika rezolucija da je, ona je i dalje ima samo 10 x 10 tačaka i to ni na ekranima sa malom rezolucijom neće da izgleda dobro ako se prikaže preko celog ekrana. Štaviše u grafičkim programima možemo da menjamo rezoluciju slike a da ne promenimo dimenzije u pikselima.

Kada je u pitanju prikaz na ekranu, koji je medij niske rezolucije (72 ili 96 dpi ili slično) i još povrh svega velična jedne tačke se razlikuje od ekrana do ekrana, prilično je komplikovan (a verovatno i besmislen) posao nastojati da se nešto prikaže tačnih fizičkih dimenzija. Kod takvog prikaza je bitno samo da slika ima dimenzije (u pikselima) koje su jednake ili veće onim dimenzijama (u pikselima) kojima će biti prikazane na ekranu.

U štampi je stvar drugačija. Velična tačke u štampi je standard i ona zaista omogućava da odredimo i prikažemo sliku tačno određenih dimenzija i ako je to potrebno, zaista je neophodno znati rezoluciju slike da bi se moglo prepračunati smanjenje ili povećanje slike da bi u štampi bila tačnih dimenzija.

Međutim, relativno je retka potreba da se slika štampa tačnih dimenzija u srazmeri sa predloškom. Češće je potrebno da slika bude neke određene veličine i u stvari je najbitnije da slika sadrži dovoljno tačaka po visini i širini da na zadatoj rezoluciji štampe zaista ima dovoljno informacija za kvalitetan prikaz.

Na primer, ako se digitalizuje slika veličine 1 x 1 cm rezolucijom od 300 dpi, ona će imati dimenzije 118 x 118px. Ako se štampa istom rezolucijom, fizičke maksimalne dimenzije te slike odštampane ne smeju biti veće od 1 x 1 cm jer slika nema dovoljno informacija za uvećanje. Međutim, ako istu sliku digitalizujemo rezolucijom 600 dpi, onda imamo više informacija (dimenzije u tačkama će biti 384x384px) i možemo je u štampi na 300 dpi prikazati dvostruko većom 2 x 2 cm. Dakle, u štampi nije nam bitno kolika je rezolucija slike koju štampamo nego kolike su njene dimenzije u piskelima da bismo znali da li imamo dovoljno tačaka da kvalitetno prikažemo sliku. U ovom primeru ako je slika 1 x 1cm skenirana rezolucijom 600 dpi, možemo je na 300 dpi štampati u bilo kojoj dimenziji ne većoj od 2 x 2 cm i imaćemo potreban kvalitet.

Svojevremeno sam za Svet kompjutera napisao jedan članak koji se ovoga dotiče: https://pedja.supurovic.net/se...je-za-casopis-svet-kompjutera/
[ Milan Milosevic @ 08.12.2017. 09:59 ] @
Evo ti procedura koja odreduje dimenzije za štampač
Code:

 Procedure OcitajParametreStampaca;
 Begin
   SirinaPapirauPix := GetDeviceCaps(Printer.Canvas.Handle, PHYSICALWIDTH);
   VisinaPapirauPix := GetDeviceCaps(Printer.Canvas.Handle, PHYSICALHEIGHT);
   SirinaPapiraumm := SirinaPapirauPix /
                      GetDeviceCaps(Printer.Canvas.Handle, LOGPIXELSX) * 25.4;
   VisinaPapiraumm := VisinaPapirauPix /
                      GetDeviceCaps(Printer.Canvas.Handle, LOGPIXELSY) * 25.4;
   BrPikselaPommY:=Printer.PageHeight / VisinaPapiraumm;
   BrPikselaPommX:=Printer.PageWidth / SirinaPapiraumm;
   YX_:=BrPikselaPommY/BrPikselaPommX;// vraca odnos visine i sirine
   XY_:=BrPikselaPommX/BrPikselaPommY;// vraca odnos visine i sirine
   MarginaX :=GetDeviceCaps(Printer.Handle, PHYSICALOFFSETX);
   MarginaY :=GetDeviceCaps(Printer.Handle, PHYSICALOFFSETY);
   VisinaSlova:= Abs(MulDiv(printer.Canvas.Font.Size, GetDeviceCaps(Printer.Handle,LOGPIXELSY),72));
   RazmakIzmeduRedova;
   Stampaj_Rb_Stranice:=1; // setuje redni broj stranice novog dokumenta na 1
 End;
[ MajorFatal @ 09.12.2017. 04:32 ] @
Citat:
FranjoZG:
Delphi XE 10.1

Imam sliku sa scaner-a.
Veličina slike: W: 1903, H: 188. Stvaran veličina: 161.12 x 15.92 mm

Slika može biti bmp ili jpg.
Da bih iz Width i Hight dobio veličinu u mm (koliko sam shvatio) treba mi DPI, ali kako dobiti DPI?

Gimp za bmp iz scaner-a uredno očita veličinu.


Čovek pita kako dobiti dpi, dpi se ne dobija dpi se zadaje, za svakodnevne potrebe i rad na računaru nam ne treba ali kad neko nešto hoće da odštampa on zadaje sa kojim dpi to hoće da se odštampa pa tako bira 300dpi za novine koje čitamo ispred nosa, 250 ili 150 dpi može za poster koji gledamo na zidu sa par metara udaljenosti, ili 72 dpi za neki bilbord pored puta ili preko zida cele zgrade jer ga gledamo sa par desetina metara udaljenosti najčešće, ako se približimo bilbordu na udaljenost sa koje najčešće čitamo novine vidimo da je vidno pikselizovan, zrnast, primećuje se svaka tačka farbe nanete na podlogu, naravno i bilbord može da se štampa kvalitetom 300dpi i tad bi štampa bila kvaliteta kao za novine i kad bi se približili ne bi primetili da je pikselizovan, ali nema potrebe obično se štedi i na farbi...

Da probam da sumiram ono što sam prethodno napisao i ovo sad u jednu rečenicu: Za poznatu rezoluciju slike u pikselima, bez obzira da li je slika bmp ili jpg, mogu se odrediti (maksimalne!) tačne dimenzije slike u štampi pod zadatim vrednostima dpi a koju smatramo za zadovoljavajući kvalitet štampe za predvidjene uslove gledanja. I to je ono što gimp očitava...po difoltu najčešće za 72 dpi...Tj. ne postoji "stvarna veličina slike".

Citat:
Predrag Supurovic:
U stvari je stvar jednostavna samo se komplikuje zbog nezgodne terminologije,odnosno raznih značenja reči rezolucija.
Evo ukratko:
Definičimo rezoluciju kao gustinu tačaka na jedinici površine. Najčešće se izražava kao dpi (dots per inch).
Dimenzije slike se izraćavaju u broju piksela po visini i širini slike.

Vidim kako je jednostavno po dužini teksta :)

Citat:
Predrag Supurovic:
Kada znamo dimenzije i rezoluicju ulazne slike, to znači da možemo da odredimo njene tačne dimenzije u centimetrima.


Pa ako već znaš dimenzije slike šta ima da odredjuješ dimenzije u centrimetrima? Samo prevedeš iz jedne jedinice mere - pikseli u drugu jedinicu mere - centimetri? :) Nema tu "odredjivanja" tačnih dimenzija nego samo konverzije? Šalim se, lepo objašnjenje znam šta hoćeš da kažeš, fin i tekst za sk, ali i dalje mislim da ne postoji bilo kakva "tačna dimenzija slike u centrimetrima" nego max dimenzija za štampu zadovoljavajućeg kvaliteta...Naravno ima smisla kad izlaganje započneš od skeniranja u toj i toj rezoluciji fizički postojeće neke odštampane već slike ili motiva, ali ako neko fotografiše nešto koje su "tačne dimenzije u centimetrima" takve fotografije?

On radi nešto, neki program za štampu ili šta već, u tom slučaju može i da vara, da namesti 150dpi kao minimum zadovoljavajući i da tvrdi da njegov program izbacuje veće formate za štampu nego gimp, ili nešto slično...

Nego mislio sam da može da se odredi rezolucija oka na osnovu toga što imamo 110 miliona receptora u oko ja kontao tu negde oko 10Mpix a sad čitam nešto čudno 576Mpix rezolucija oka ali 7Mpix bitnih za vidjenje...baš čudno.

https://curiosity.com/topics/y...-the-wrong-question-curiosity/

Nego ovo što mene zanima bmp ima podatke za svaki piksel valjda, a jpg je kompresovana varijanta sa nekim vrednostima nepovratno izgubljenim, nekako po logici bmp bi morao da može da se zadovoljavajuće štampa na veći format od iste slike jpg a program mi prijavljuje iste dimenzije...

Prva slika je bmp i jpg predvidjena veličina za štampu da je ista i kad se promeni na 300dpi sa 72 za koliko se predvidjena veličina smanji..



Druga slika je dve slike sa istim motivom jpg je napravljena od bmp ipak se vidi razlika u kvalitetu kad se povećaju na 500% pogled, i po logici bmp nosi više informacija i po ovom primeru vidljivo bmp bi morao da može da se štampa zadovoljavajuće na veće formate od jpg ali program ipak prijavljuje iste dimenzije?




[Ovu poruku je menjao MajorFatal dana 09.12.2017. u 05:43 GMT+1]


[Ovu poruku je menjao MajorFatal dana 09.12.2017. u 05:46 GMT+1]

[Ovu poruku je menjao MajorFatal dana 09.12.2017. u 05:47 GMT+1]
[ Predrag Supurovic @ 09.12.2017. 09:23 ] @
Pa kad se pogleda ovo tvoje objašnjenje onda postaje jasno zašto sam ja ono moje nazvao jednsotavnim i kratkim :) Uglavnom si ponovio ono što sam ja rekao )sa nekim entačnotima) ali na zbunjujui način :)

Citat:

Nego ovo što mene zanima bmp ima podatke za svaki piksel valjda, a jpg je kompresovana varijanta sa nekim vrednostima
nepovratno izgubljenim, nekako po logici bmp bi morao da može da se zadovoljavajuće štampa na veći format od iste slike
jpg a program mi prijavljuje iste dimenzije...


Zato što kvalitet JPEG nema nakve veze sa rezolucijom i dimenzijama slike. Kompresija u JPEG ne menja ni rezoluciju ni dimenzije nego sadržaj piksela tako da matematičnkom analizom i obradom izbacuje neke vizuelne inforamcije iz slike ali tako da dobije vizuelno sličan efekat. To omogućava da se sadržaj može lakše kompresovati.

Citat:

Citat:

Kada znamo dimenzije i rezoluicju ulazne slike, to znači da možemo da odredimo njene tačne dimenzije u centimetrima.


Pa ako već znaš dimenzije slike šta ima da odredjuješ dimenzije u centrimetrima? Samo prevedeš iz jedne jedinice mere - pikseli u drugu jedinicu mere - centimetri? :) Nema tu "odredjivanja" tačnih dimenzija nego samo konverzije? Šalim se, lepo objašnjenje znam šta hoćeš da kažeš, fin i tekst za sk, ali i dalje mislim da ne postoji bilo kakva "tačna dimenzija slike u centrimetrima" nego max dimenzija za štampu zadovoljavajućeg kvaliteta...Naravno ima smisla kad izlaganje započneš od skeniranja u toj i toj rezoluciji fizički postojeće neke odštampane već slike ili motiva, ali ako neko fotografiše nešto koje su "tačne dimenzije u centimetrima" takve fotografije?


Verovatno si prevideo da sam ja govorio o ULAZNOJ slici i eventualnoj potrebi da se odredi tačna fizička dimenzija u centimetrima digitalizovpanog predloška. Tvoja opaska se odnosi na IZLAZNU sliku.

Postoje realne potrebe za poznavanjem rezolucije slike, ako na primer treba da se reprodukuje kopija istih dimenzija. Određivanje dimenzija u centimetrima nije samo promena merne jedinice, mora se uraditi preračun shodno rezoluciji,a može i da se izbegne ako se zna ulazna rezolucija slike i prosto se odštampa istom rezolucijom.

Kada u ozbiljniji grafički program uvezeš sliku kojoj je poznata rezoucija ona će u programu biti prikazana istih fizičkih dimenzija kao što je digitalizovani predložak. To se lako može provberiti: kada se u Corel DRaw uveze skenirana tif slika (koja uvek sadrži podatak o rezoluciji) biće prikazana tačnih dimenzija. Kada se uveze bmp ili JEPG, koje ne sadrže podatak rezoluciji, program će pretpsotaviti da se radi o nekoj rezoluciji, obično 82 dpi i prikazati sliku dimenzija shodno toj rezoluciji što uglavnom nema blage veze sa stvarnim dimenzijama originala.

Obnrati pažnju da j nisam govorioni o skeniranju ni o fotografisanju nego o digitalizaicji. To je namerno. Digitlizaciajje opšti postupak prevođenja izgleda negog predloška u digitalni grafički zapis. Koji postupak se korsiti zavisi od potreba i mogućnosti.

Naravno da će neko kome su potrebe tačne fizike dimenzije objekata radije da skenira nego da fotografiše jer je skeniranje jednostavniji proces koji omogućava da se zadre informacije o dimenzijama. To je moguće i sa fotogrfisanjem ali je mnogo komplikovaniji postupak i ima smisla koristiti ga samo ako skeniranje nije primenljivo.

Naravno ako precizne fizičke dimenzije predloška nisu bitne, onda je i fotografisanje sasvim prihvatljiv postupak. Ja bih ipak pretpostavio da neko kome je bitna rezolucija pr emisli na skeniranje.

Citat:

On radi nešto, neki program za štampu ili šta već, u tom slučaju može i da vara, da namesti 150dpi kao minimum zadovoljavajući i da tvrdi da njegov program izbacuje veće formate za štampu nego gimp, ili nešto slično...


Šta FranjoZG radi ne znamo, nie rekao, čoveku je potrebno da razume pojmove da bi uradio to što radi.

Citat:

Nego mislio sam da može da se odredi rezolucija oka na osnovu toga što imamo 110 miliona receptora u oko ja kontao tu negde oko 10Mpix a sad čitam nešto čudno 576Mpix rezolucija oka ali 7Mpix bitnih za vidjenje...baš čudno.


Rezolucija se izražava brojem tačaka po jedinici dužine. Ovo očemu ti govoriš je ukupan broj piksela u slici što je prilično relativna jedinica mere sa kojom se ne može raditi egzaktno. Za rad su potrebne dimenzije u tačkama po širini i visini i eventualno rezolucija ako je potrebno da se znaju tačne fizičke mere predloška.

[ FranjoZG @ 11.12.2017. 23:15 ] @
Drago mi je da netko ima volje toliko objašnjavati, naučio sam nešto novo (grafikom se baš i nisam bavio), ali, da se vratim na početak:

Da bih iz Width i Hight dobio veličinu u mm (koliko sam shvatio) treba mi DPI, ali kako dobiti DPI ili pixels/inch?

Citat:
Milan Milosevic: Evo ti procedura koja odreduje dimenzije za štampač
Code:

 Procedure OcitajParametreStampaca;
 Begin
   SirinaPapirauPix := GetDeviceCaps(Printer.Canvas.Handle, PHYSICALWIDTH);
   VisinaPapirauPix := GetDeviceCaps(Printer.Canvas.Handle, PHYSICALHEIGHT);
   SirinaPapiraumm := SirinaPapirauPix /
                      GetDeviceCaps(Printer.Canvas.Handle, LOGPIXELSX) * 25.4;
   VisinaPapiraumm := VisinaPapirauPix /
                      GetDeviceCaps(Printer.Canvas.Handle, LOGPIXELSY) * 25.4;
   BrPikselaPommY:=Printer.PageHeight / VisinaPapiraumm;
   BrPikselaPommX:=Printer.PageWidth / SirinaPapiraumm;
   YX_:=BrPikselaPommY/BrPikselaPommX;// vraca odnos visine i sirine
   XY_:=BrPikselaPommX/BrPikselaPommY;// vraca odnos visine i sirine
   MarginaX :=GetDeviceCaps(Printer.Handle, PHYSICALOFFSETX);
   MarginaY :=GetDeviceCaps(Printer.Handle, PHYSICALOFFSETY);
   VisinaSlova:= Abs(MulDiv(printer.Canvas.Font.Size, GetDeviceCaps(Printer.Handle,LOGPIXELSY),72));
   RazmakIzmeduRedova;
   Stampaj_Rb_Stranice:=1; // setuje redni broj stranice novog dokumenta na 1
 End;


Ovo sa GetDeviceCaps sam našao, ali mi ne daje dobre rezultate - provjereno.
Trebam točne dimenzije jer scaniranu sliku koristim za digitalnu arhivu, a PDF kreiram s FastReport-om (ide i to, isprobano). Jedini problem mi je ostao definiranje veličine slika, a FastReport zadaje veličine u cm.

Zašto FastReport? Zato što ga imam, a free convertere bmp, jpg -> PDF nisam našao.
[ MajorFatal @ 12.12.2017. 04:06 ] @
Citat:
Predrag Supurovic:
Pa kad se pogleda ovo tvoje objašnjenje onda postaje jasno zašto sam ja ono moje nazvao jednsotavnim i kratkim :) Uglavnom si ponovio ono što sam ja rekao )sa nekim entačnotima) ali na zbunjujui način :)


Dakle tvoje je JEDNSOTAVNO bez ENTAČNOTIMA i nije na ZBUNJUJUJI način :) Verovatno si prevideo rečenicu u kojoj sve sumiram, doduše bez ulaznih parametara, sve zaboravim da pričamo o skeneru..

Citat:
Predrag Supurovic:
Citat:

Nego ovo što mene zanima bmp ima podatke za svaki piksel valjda, a jpg je kompresovana varijanta sa nekim vrednostima
nepovratno izgubljenim, nekako po logici bmp bi morao da može da se zadovoljavajuće štampa na veći format od iste slike
jpg a program mi prijavljuje iste dimenzije...


Zato što kvalitet JPEG nema nakve veze sa rezolucijom i dimenzijama slike. Kompresija u JPEG ne menja ni rezoluciju ni dimenzije nego sadržaj piksela tako da matematičnkom analizom i obradom izbacuje neke vizuelne inforamcije iz slike ali tako da dobije vizuelno sličan efekat. To omogućava da se sadržaj može lakše kompresovati.


A be zašto citiraš a onda umesto da odgovoriš na konkretno pitanje ako znaš, pišeš o nečem drugom, ok jpg ne menja ni rezoluciju ni dimenzije, ali menja sadržaj... izbacuje i nepovratno gubi informacije.. vizuelno se dobija sličan efekat kao original ali dovoljno sličan samo na toj veličini kao i original, prilikom bilo kog uvećanja bmp koja nosi podatke o svakom pikselu bi morala da može da se bolje odštampa (vernije, doslednije) nego jpg na kojoj se pojavljuju veoma vidljivi artefekti i nedostaci, zašto program prijavljuje identične dimenzije za eventualnu štampu?


Citat:
Predrag Supurovic:
Verovatno si prevideo da sam ja govorio o ULAZNOJ slici i eventualnoj potrebi da se odredi tačna fizička dimenzija u centimetrima digitalizovpanog predloška. Tvoja opaska se odnosi na IZLAZNU sliku.

Postoje realne potrebe za poznavanjem rezolucije slike, ako na primer treba da se reprodukuje kopija istih dimenzija. Određivanje dimenzija u centimetrima nije samo promena merne jedinice, mora se uraditi preračun shodno rezoluciji,a može i da se izbegne ako se zna ulazna rezolucija slike i prosto se odštampa istom rezolucijom.

Kada u ozbiljniji grafički program uvezeš sliku kojoj je poznata rezoucija ona će u programu biti prikazana istih fizičkih dimenzija kao što je digitalizovani predložak. To se lako može provberiti: kada se u Corel DRaw uveze skenirana tif slika (koja uvek sadrži podatak o rezoluciji) biće prikazana tačnih dimenzija. Kada se uveze bmp ili JEPG, koje ne sadrže podatak rezoluciji, program će pretpsotaviti da se radi o nekoj rezoluciji, obično 82 dpi i prikazati sliku dimenzija shodno toj rezoluciji što uglavnom nema blage veze sa stvarnim dimenzijama originala.

Obnrati pažnju da j nisam govorioni o skeniranju ni o fotografisanju nego o digitalizaicji. To je namerno. Digitlizaciajje opšti postupak prevođenja izgleda negog predloška u digitalni grafički zapis. Koji postupak se korsiti zavisi od potreba i mogućnosti.

Naravno da će neko kome su potrebe tačne fizike dimenzije objekata radije da skenira nego da fotografiše jer je skeniranje jednostavniji proces koji omogućava da se zadre informacije o dimenzijama. To je moguće i sa fotogrfisanjem ali je mnogo komplikovaniji postupak i ima smisla koristiti ga samo ako skeniranje nije primenljivo.

Naravno ako precizne fizičke dimenzije predloška nisu bitne, onda je i fotografisanje sasvim prihvatljiv postupak. Ja bih ipak pretpostavio da neko kome je bitna rezolucija pr emisli na skeniranje.


Ovo se skoro sve slažem, ja sam smetnuo sa uma da je skener u pitanju, ipak mislim da se može govoriti o stvarnim dimenzijama jedino originala, od momenta digitalizacije više nema nikakvih stvarnih dimenzija već samo dimenzija predvidjenih za nešto, štampu, reprodukciju kopije istih dimenzija...šta god. Ako u ozbiljniji grafički program uvezem sliku poljančeta i drveta makar i u tif formatu neće mi reći koliko je drvo visoko, ili iz 3D programa nešto generisano a sačuvano u tif formatu? Ali uspeo si da me zainteresuješ, kako tif to postiže da sadrži podatke o rezoluciji s obzirom da ima raznih modela skenera sa različitim veličinama senzora i različitim osobinama, verujem da bi i pokretača teme interesovalo..


Citat:
Predrag Supurovic:
Citat:

Nego mislio sam da može da se odredi rezolucija oka na osnovu toga što imamo 110 miliona receptora u oku ja kontao tu negde oko 10Mpix a sad čitam nešto čudno 576Mpix rezolucija oka ali 7Mpix bitnih za vidjenje...baš čudno.


Rezolucija se izražava brojem tačaka po jedinici dužine. Ovo očemu ti govoriš je ukupan broj piksela u slici što je prilično relativna jedinica mere sa kojom se ne može raditi egzaktno. Za rad su potrebne dimenzije u tačkama po širini i visini i eventualno rezolucija ako je potrebno da se znaju tačne fizičke mere predloška.


Meni bi bilo zanimljivo ako znamo rezoluciju oka gde bi bila neka vrednost da nešto odštampano, reprodukovano sa sigurnošću lepo vidimo.. Dakle 110 miliona senzornih ćelija gusto zapakovanih na 1 Cm kvadratni, ili ako hoćeš 11.000 senzora na dužini od 1 Cm, koja bi to bila rezolucija?




[ Predrag Supurovic @ 12.12.2017. 05:44 ] @
Citat:
FranjoZG:
Da bih iz Width i Hight dobio veličinu u mm (koliko sam shvatio) treba mi DPI, ali kako dobiti DPI ili pixels/inch?


Kao što je već rečeno, kada su u pitanju bmp i jpg to su formati koji ne sadrže obavezno informaciju o DPI. Ako ti je ta informacija neophodna, skeniraj u tiff format.

Citat:

Trebam točne dimenzije jer scaniranu sliku koristim za digitalnu arhivu, a PDF kreiram s FastReport-om (ide i to, isprobano). Jedini problem mi je ostao definiranje veličine slika, a FastReport zadaje veličine u cm.

Zašto FastReport? Zato što ga imam, a free convertere bmp, jpg -> PDF nisam našao.


Hmmm... a što ne koristiš neki program koji skenira i snima direktno u PDF format? tako bi preskočio ceo problem.
[ Predrag Supurovic @ 12.12.2017. 06:26 ] @
Citat:
MajorFatal:
Citat:

Pa kad se pogleda ovo tvoje objašnjenje onda postaje jasno zašto sam ja ono moje nazvao jednsotavnim i kratkim :) Uglavnom si ponovio ono što sam ja rekao )sa nekim entačnotima) ali na zbunjujui način :)


Dakle tvoje je JEDNSOTAVNO bez ENTAČNOTIMA i nije na ZBUNJUJUJI način :) Verovatno si prevideo rečenicu u kojoj sve sumiram, doduše bez ulaznih parametara, sve zaboravim da pričamo o skeneru..


Ups, nekome je izgleda povređena sujeta :)

Citat:

Citat:

Nego ovo što mene zanima bmp ima podatke za svaki piksel valjda, a jpg je kompresovana varijanta sa nekim vrednostima
nepovratno izgubljenim, nekako po logici bmp bi morao da može da se zadovoljavajuće štampa na veći format od iste slike
jpg a program mi prijavljuje iste dimenzije...


Citat:

Zato što kvalitet JPEG nema nakve veze sa rezolucijom i dimenzijama slike. Kompresija u JPEG ne menja ni rezoluciju ni dimenzije nego sadržaj piksela tako da matematičnkom analizom i obradom izbacuje neke vizuelne inforamcije iz slike ali tako da dobije vizuelno sličan efekat. To omogućava da se sadržaj može lakše kompresovati.



A be zašto citiraš a onda umesto da odgovoriš na konkretno pitanje ako znaš, pišeš o nečem drugom, ok jpg ne menja ni rezoluciju ni dimenzije, ali menja sadržaj... izbacuje i nepovratno gubi informacije.. vizuelno se dobija sličan efekat kao original ali dovoljno sličan samo na toj veličini kao i original, prilikom bilo kog uvećanja bmp koja nosi podatke o svakom pikselu bi morala da može da se bolje odštampa (vernije, doslednije) nego jpg na kojoj se pojavljuju veoma vidljivi artefekti i nedostaci, zašto program prijavljuje identične dimenzije za eventualnu štampu?


Bogma zaista povređena sujeta :) Sve sam više uveren da ti to dolazi od neznanja i nesigurnosti u sebe.

Već sam rekao šta u principu radi JPEG i da ne menja rezoluciju. Nisam ulazio u detalje oko JPEG kompresije jer je nebitno za ovu diskusiju. BITNO je samo to da JPEG ne menja dimenzije u pikselima niti rezoluciju. Ako te interesuje kako to da ne menja siguran sam da na Internetu možeš naći mnogo vrlo detaljnih objašnjenja šta je i kako radi JPEG.

Međutim, ako ti brkaš kvalitet JEPG sa rezolucijom, onda mi je jasno što ti je povređena sujeta, ali mi je jasno i zašto su tvoja objašnjenja nerazumljiva i puna netačnosti ili makar proizvoljnosti. Znaš, kada nekome želiš nešto da objasniš, napre moraš da vladaš tom problematikom, a onda i da umeš da daš jasna i TAČNA objašnjenja.

Citat:

Ovo se skoro sve slažem, ja sam smetnuo sa uma da je skener u pitanju, ipak mislim da se može govoriti o stvarnim dimenzijama jedino originala, od momenta digitalizacije više nema nikakvih stvarnih dimenzija već samo dimenzija predvidjenih za nešto, štampu, reprodukciju kopije istih dimenzija...šta god. Ako u ozbiljniji grafički program uvezem sliku poljančeta i drveta makar i u tif formatu neće mi reći koliko je drvo visoko, ili iz 3D programa nešto generisano a sačuvano u tif formatu?


Kada su poljanče i drvo u pitanju, u najvećem broju slučajeva zaista nisu bitne njihove dimenzije, ali to ne mora da bude slučaj. Ja sam, recimo, radio na nekim slučajevima gde je bilo neophodno fotoaparatom slikavati neke objekte a zatim naknadno u računaru dođi do njihovih tačnih dimenzija. Radi se o složenim projekcijama ali je izvodjivo. Naravno kada se radi o 3d objektima, da tu rezolucija slike nije nešto mnogo bila bitna, sem da bude što veća da bi se imalo što više detalja.

Međutim, uzmimo na primer pripremu predložaka za izradu štampanih pločica. Tu je vrlo važno da dimenzije budu veoma precizne. Kada se pravi takav preložak, pogotovo skeniranjem, veoma se vodi računa o tome da se iz njega znaju tačne dimenzije a radi jednostavnosti rada, obično se predložak snima u nekom formatu koji sadrži DPI, tako da se slika čim se učita u program za štampu dobije sa tačnim dimenzijama.

Ili uzmimo drugi primer, da recimo imaš neko dobro staro pojačalo ali su se na prednjoj ploči izlizali natpipsi za komande i hoćeš to da osvežiš. Jedan način je da uzmeš pomično merilo u rike i premeravaš sve detalje na ploči da bi nacrtao predložak tačnih dimenzija. Izvodljivo je ali je sporo i vrlo podložno greškama.

Brži načn je da skineš ploču, skeniraš je sa tačnim dimenzijama, učitaš u neki program za crtanje, i koristeći skeniranu ploču kao podlogu nacrtaš ponovo sve oznake. (ako si vešt sa fotoparatom, možeš i da prođeš bez razmontiravanja ploče). Sve u svemu, umesto da gubiš vreme na premeravanje dimenzija i crtanje svih detalja, samo treba da vodiš računa o rezoluciji skeniranja i rezoluciji štampe i garantovano dobijaš tačne dimenzije.

Drugim rečima, postoje razlozi da fizičke dimenzije digitalizovanog objekta i rezolucija digitalizacije nekada budu bitni.

Citat:

Ali uspeo si da me zainteresuješ, kako tif to postiže da sadrži podatke o rezoluciji s obzirom da ima raznih modela skenera sa različitim veličinama senzora i različitim osobinama, verujem da bi i pokretača teme interesovalo..


Prosto, TIF kao format u svojoj strukturi ima predviđeno polje u koje se upisuje rezolucije slike i to polje je obavezno popunjeno bez obzrira da li skeniraš, fotografišeš ili sliku crtaš u nekom programu ili je praviš na neki drugi način. Kad god se snima sika u TIFF format, upisuje se rezolucija.

Zašto rezolucija i dimenzije skenera nemaju uticaja? Pa zato što dimenzije i rezolucija skenera samo određuju njegove mogućnosti. U skeniranu sliku se ne upisuju dimenzije i rezoucija skenera nego dimenzije i rezolucija skeniranog materijala. Parametre skeniranja podešavaš prilikom skeniranja.

Može jedno glupo pitanje, jesi li ti ikada koristio skener?

Citat:

Meni bi bilo zanimljivo ako znamo rezoluciju oka gde bi bila neka vrednost da nešto odštampano, reprodukovano sa sigurnošću lepo vidimo.. Dakle 110 miliona senzornih ćelija gusto zapakovanih na 1 Cm kvadratni, ili ako hoćeš 11.000 senzora na dužini od 1 Cm, koja bi to bila rezolucija?


Koliko ja znam oko nema rezoluciju, bar ne u onom smilsu u kome mi to ovde diskutujemo. Slika koju mi vidimo je proizvod prilično kompleksne obrade koju vrši mozak i predstavlja našu percepciju onoga što nam oko prenese, jer oko je samo optički uređaj, ono ne vidi - to što mi vidimo je slika koju stvara mozak. Fizička rezolucija oka kao optičkog senzora je priično mala kada se uzme u obzir broj i raspored čepića (optičkih senzora u oku) međutim, mozak završava posao tako da mi vidimo znatno većom rezolucijom (ili bar imamo utisak da je tako).

U svakom slučaju, rezolucija vida je vrlo relativna stvar i nema mnogo veze sa ovom temom.
[ savkic @ 12.12.2017. 06:34 ] @
> Ovo sa GetDeviceCaps sam našao, ali mi ne daje dobre rezultate - provjereno.
> Trebam točne dimenzije jer scaniranu sliku koristim za digitalnu arhivu, a PDF kreiram s FastReport-om (ide i to, isprobano). Jedini
> problem mi je ostao definiranje veličine slika, a FastReport zadaje veličine u cm.
> Zašto FastReport? Zato što ga imam, a free convertere bmp, jpg -> PDF nisam našao.

Da li ti radis i OCR na tim skenovima ili samo sacuvas u PDF?
Ako je samo cuvanje u PDF onda time nista ne dobijas odnosno samo mozes izgubiti na kvalitetu slike (PDF po defaultu smanjuje rezoluciju), mozes i jednostavno da cuvas kao sliku.

Idealna kombinacija je propustanje slike kroz OCR i pravljenje kombinovanog PDFa sa slikom i tekstom, time dobijas i uvid u original a i pretragu/kopiranje teksta.
[ tkaranovic @ 12.12.2017. 10:33 ] @
Evo dole kod koji moze da nadje guglanjem.

Inace moze da se izmeni Delphi jpeg unit i da se doda ta funkcija a da se koristi delphijevo citanje jpg fajla.


Code:

procedure GetResJpg(JPGFile: string);
const
  BufferSize = 50;
var
  Buffer: string;
  Index: integer;
  FileStream: TFileStream;
  HorzRes, VertRes: Word;
  DP: Byte;
  Measure: string;
begin
  FileStream := TFileStream.Create(JPGFile, fmOpenReadWrite);
  try
    SetLength(Buffer, BufferSize);
    FileStream.Read(Buffer[1], BufferSize);
    Index := Pos('JFIF' + #$00, Buffer);
    if Index > 0 then
    begin
      FileStream.Seek(Index + 6, soFromBeginning);
      FileStream.Read(DP, 1);
      case DP of
        1:
          Measure := 'DPI'; //Dots Per Inch
        2:
          Measure := 'DPC'; //Dots Per Cm.
      end;
      FileStream.Read(HorzRes, 2); // x axis
      HorzRes := Swap(HorzRes);
      FileStream.Read(VertRes, 2); // y axis
      VertRes := Swap(VertRes);
    end
  finally
    FileStream.Free;
  end;
end;



[Ovu poruku je menjao savkic dana 12.12.2017. u 12:05 GMT+1, napomena, ubacio sam prilozeni kod u odgovarajuce tagove]


[Ovu poruku je menjao savkic dana 12.12.2017. u 12:08 GMT+1]
[ Milan Milosevic @ 12.12.2017. 19:42 ] @
FranjoZG proceduru koju sam ti dao kod mene radi.
Nisam je testirao za slike ali mi ispravo vraca broj piksela po milimetru.
Procedura je za štampač, tako da je moguće da je rezolucija štampača i skenera različita što bi dovelo do pogrešne veličine kod tebe.
Proveri da li si koristio GetDeviceCaps za skener.
Pogledaj specifikacije ove funkcije na msdn
[ @ 14.12.2017. 04:02 ] @
Citat:
Predrag Supurovic:
Citat:
MajorFatal:
Citat:

Pa kad se pogleda ovo tvoje objašnjenje onda postaje jasno zašto sam ja ono moje nazvao jednsotavnim i kratkim :) Uglavnom si ponovio ono što sam ja rekao )sa nekim entačnotima) ali na zbunjujui način :)


Dakle tvoje je JEDNSOTAVNO bez ENTAČNOTIMA i nije na ZBUNJUJUJI način :) Verovatno si prevideo rečenicu u kojoj sve sumiram, doduše bez ulaznih parametara, sve zaboravim da pričamo o skeneru..


Ups, nekome je izgleda povređena sujeta :)

Citat:

Citat:

Nego ovo što mene zanima bmp ima podatke za svaki piksel valjda, a jpg je kompresovana varijanta sa nekim vrednostima
nepovratno izgubljenim, nekako po logici bmp bi morao da može da se zadovoljavajuće štampa na veći format od iste slike
jpg a program mi prijavljuje iste dimenzije...


Citat:

Zato što kvalitet JPEG nema nakve veze sa rezolucijom i dimenzijama slike. Kompresija u JPEG ne menja ni rezoluciju ni dimenzije nego sadržaj piksela tako da matematičnkom analizom i obradom izbacuje neke vizuelne inforamcije iz slike ali tako da dobije vizuelno sličan efekat. To omogućava da se sadržaj može lakše kompresovati.



A be zašto citiraš a onda umesto da odgovoriš na konkretno pitanje ako znaš, pišeš o nečem drugom, ok jpg ne menja ni rezoluciju ni dimenzije, ali menja sadržaj... izbacuje i nepovratno gubi informacije.. vizuelno se dobija sličan efekat kao original ali dovoljno sličan samo na toj veličini kao i original, prilikom bilo kog uvećanja bmp koja nosi podatke o svakom pikselu bi morala da može da se bolje odštampa (vernije, doslednije) nego jpg na kojoj se pojavljuju veoma vidljivi artefekti i nedostaci, zašto program prijavljuje identične dimenzije za eventualnu štampu?


Bogma zaista povređena sujeta :) Sve sam više uveren da ti to dolazi od neznanja i nesigurnosti u sebe.

Već sam rekao šta u principu radi JPEG i da ne menja rezoluciju. Nisam ulazio u detalje oko JPEG kompresije jer je nebitno za ovu diskusiju. BITNO je samo to da JPEG ne menja dimenzije u pikselima niti rezoluciju. Ako te interesuje kako to da ne menja siguran sam da na Internetu možeš naći mnogo vrlo detaljnih objašnjenja šta je i kako radi JPEG.

Međutim, ako ti brkaš kvalitet JEPG sa rezolucijom, onda mi je jasno što ti je povređena sujeta, ali mi je jasno i zašto su tvoja objašnjenja nerazumljiva i puna netačnosti ili makar proizvoljnosti. Znaš, kada nekome želiš nešto da objasniš, napre moraš da vladaš tom problematikom, a onda i da umeš da daš jasna i TAČNA objašnjenja.

Citat:

Ovo se skoro sve slažem, ja sam smetnuo sa uma da je skener u pitanju, ipak mislim da se može govoriti o stvarnim dimenzijama jedino originala, od momenta digitalizacije više nema nikakvih stvarnih dimenzija već samo dimenzija predvidjenih za nešto, štampu, reprodukciju kopije istih dimenzija...šta god. Ako u ozbiljniji grafički program uvezem sliku poljančeta i drveta makar i u tif formatu neće mi reći koliko je drvo visoko, ili iz 3D programa nešto generisano a sačuvano u tif formatu?


Kada su poljanče i drvo u pitanju, u najvećem broju slučajeva zaista nisu bitne njihove dimenzije, ali to ne mora da bude slučaj. Ja sam, recimo, radio na nekim slučajevima gde je bilo neophodno fotoaparatom slikavati neke objekte a zatim naknadno u računaru dođi do njihovih tačnih dimenzija. Radi se o složenim projekcijama ali je izvodjivo. Naravno kada se radi o 3d objektima, da tu rezolucija slike nije nešto mnogo bila bitna, sem da bude što veća da bi se imalo što više detalja.

Međutim, uzmimo na primer pripremu predložaka za izradu štampanih pločica. Tu je vrlo važno da dimenzije budu veoma precizne. Kada se pravi takav preložak, pogotovo skeniranjem, veoma se vodi računa o tome da se iz njega znaju tačne dimenzije a radi jednostavnosti rada, obično se predložak snima u nekom formatu koji sadrži DPI, tako da se slika čim se učita u program za štampu dobije sa tačnim dimenzijama.

Ili uzmimo drugi primer, da recimo imaš neko dobro staro pojačalo ali su se na prednjoj ploči izlizali natpipsi za komande i hoćeš to da osvežiš. Jedan način je da uzmeš pomično merilo u rike i premeravaš sve detalje na ploči da bi nacrtao predložak tačnih dimenzija. Izvodljivo je ali je sporo i vrlo podložno greškama.

Brži načn je da skineš ploču, skeniraš je sa tačnim dimenzijama, učitaš u neki program za crtanje, i koristeći skeniranu ploču kao podlogu nacrtaš ponovo sve oznake. (ako si vešt sa fotoparatom, možeš i da prođeš bez razmontiravanja ploče). Sve u svemu, umesto da gubiš vreme na premeravanje dimenzija i crtanje svih detalja, samo treba da vodiš računa o rezoluciji skeniranja i rezoluciji štampe i garantovano dobijaš tačne dimenzije.

Drugim rečima, postoje razlozi da fizičke dimenzije digitalizovanog objekta i rezolucija digitalizacije nekada budu bitni.

Citat:

Ali uspeo si da me zainteresuješ, kako tif to postiže da sadrži podatke o rezoluciji s obzirom da ima raznih modela skenera sa različitim veličinama senzora i različitim osobinama, verujem da bi i pokretača teme interesovalo..


Prosto, TIF kao format u svojoj strukturi ima predviđeno polje u koje se upisuje rezolucije slike i to polje je obavezno popunjeno bez obzrira da li skeniraš, fotografišeš ili sliku crtaš u nekom programu ili je praviš na neki drugi način. Kad god se snima sika u TIFF format, upisuje se rezolucija.

Zašto rezolucija i dimenzije skenera nemaju uticaja? Pa zato što dimenzije i rezolucija skenera samo određuju njegove mogućnosti. U skeniranu sliku se ne upisuju dimenzije i rezoucija skenera nego dimenzije i rezolucija skeniranog materijala. Parametre skeniranja podešavaš prilikom skeniranja.

Može jedno glupo pitanje, jesi li ti ikada koristio skener?

Citat:

Meni bi bilo zanimljivo ako znamo rezoluciju oka gde bi bila neka vrednost da nešto odštampano, reprodukovano sa sigurnošću lepo vidimo.. Dakle 110 miliona senzornih ćelija gusto zapakovanih na 1 Cm kvadratni, ili ako hoćeš 11.000 senzora na dužini od 1 Cm, koja bi to bila rezolucija?


Koliko ja znam oko nema rezoluciju, bar ne u onom smilsu u kome mi to ovde diskutujemo. Slika koju mi vidimo je proizvod prilično kompleksne obrade koju vrši mozak i predstavlja našu percepciju onoga što nam oko prenese, jer oko je samo optički uređaj, ono ne vidi - to što mi vidimo je slika koju stvara mozak. Fizička rezolucija oka kao optičkog senzora je priično mala kada se uzme u obzir broj i raspored čepića (optičkih senzora u oku) međutim, mozak završava posao tako da mi vidimo znatno većom rezolucijom (ili bar imamo utisak da je tako).

U svakom slučaju, rezolucija vida je vrlo relativna stvar i nema mnogo veze sa ovom temom.


Nisam pri kompu moram sa mob da odgovorim pa kako ispadne: Kao ekspertu i svetskom autoritetu na polju oluka, iksni, vandiksni, vetar-lajsni i okapnica odavde pa sve do Kaluđerice veoma mi je povređena sujeta, stvarno ne znam kako si to mogao da uradiš, takođe priznajem da sam neznalica i da sam nesiguran u sebe pogotovo prilikom javnog nastupa a i inače. Da ti odgovorim i na pitanje koje si postavio a za koje ja ne smatram da je glupo: Ne, nikad nisam koristio skener.
Moja ogromna sujeta mi inače ne bi dopustila da priznam da nešto ne znam i da u cilju saznavanja postavljam pitanja, ali eto sad je povređena pa se određeni propusti dešavaju. Htio bih samo da napomenem da moja pitanja nemaju mnogo veze sa onim što je pitao pokretač teme nego su pitanju par stvari koje mene interesuju a tiču se bmp i jpg i stvarnih dimenzija, ništa ne arhiviram i ne koristim skener..
Pitanja:
1) Slao sam nešto na štampu, štampar mi kaže da je bolje ako pošaljem bmp nego jpg, program koji koristim za pregledanje fotki mi sa druge strane kaže da obe verzije slike i bmp i jpg imaju iste dimenzije za print 33x47 Cm, kome da verujem štamparu ili programu?
2) Da ne bi raspravljali o oku i mozgu jer bi moglo da potraje, koju rezoluciju bi imao uređaj koji ima 110 miliona foto senzora gusto pakovanih na 1 Cm kvadratni, ako rezoluciju definišemo kao gustinu tačaka po jedinici površine?

Ne žuri sa odgovorom i ako je mnogo strog ublaži malo, još uvek ližem rane od one prethodne povrede sujete.
[ Predrag Supurovic @ 14.12.2017. 10:00 ] @
Citat:
MajorFatal : Nisam pri kompu moram sa mob da odgovorim pa kako ispadne: Kao ekspertu i svetskom autoritetu na polju oluka, iksni, vandiksni, vetar-lajsni i okapnica odavde pa sve do Kaluđerice veoma mi je povređena sujeta, stvarno ne znam kako si to mogao da uradiš, takođe priznajem da sam neznalica i da sam nesiguran u sebe pogotovo prilikom javnog nastupa a i inače. Da ti odgovorim i na pitanje koje si postavio a za koje ja ne smatram da je glupo: Ne, nikad nisam koristio skener.
Moja ogromna sujeta mi inače ne bi dopustila da priznam da nešto ne znam i da u cilju saznavanja postavljam pitanja, ali eto sad je povređena pa se određeni propusti dešavaju. Htio bih samo da napomenem da moja pitanja nemaju mnogo veze sa onim što je pitao pokretač teme nego su pitanju par stvari koje mene interesuju a tiču se bmp i jpg i stvarnih dimenzija, ništa ne arhiviram i ne koristim skener..
Pitanja:
1) Slao sam nešto na štampu, štampar mi kaže da je bolje ako pošaljem bmp nego jpg, program koji koristim za pregledanje fotki mi sa druge strane kaže da obe verzije slike i bmp i jpg imaju iste dimenzije za print 33x47 Cm, kome da verujem štamparu ili programu?
2) Da ne bi raspravljali o oku i mozgu jer bi moglo da potraje, koju rezoluciju bi imao uređaj koji ima 110 miliona foto senzora gusto pakovanih na 1 Cm kvadratni, ako rezoluciju definišemo kao gustinu tačaka po jedinici površine?

Ne žuri sa odgovorom i ako je mnogo strog ublaži malo, još uvek ližem rane od one prethodne povrede sujete.


Očigledno sujeta i dalje radi.

Nisam znao da si ekspert za sve te oblasti ali te ta ekspertska znanja nikako ne kvalifikuju i kao poznavaoca grafičkih formata. Poznavalac očiglendo nisi jer ovo što tebe zbunjuje su početničke stvari. To se inače uči na prvom času bilo kog kursa digitalne grafičke obrade kao i u svakom tutorijalu za početnike. Evo ti neko najkraće objašnjenje na https://pedja.supurovic.net/op...a-fotografija-i-crteza-za-web/ i https://www.datavoyage.com/dokumenti/webfoto/. U tekstovima se porede JPEG, PNG i GIF ali nadam se da si dovoljno vispren da skontaš da sve što se odnosi na PNG i GIF u stvari važi i za BMP.

Evo treći put ću ti ponoviti, a ako ti opet ne bude jasno, ne bih više gubio vreme: to da li je slika u BMP ili JPEG formatu nema ama baš nikave veze sa rezolucijom nego sa kompresijom. BMP ima kompresiju bez gubitaka (losless) što znači da zadržava piksele takve kakvi su, a JPEG ima kompresiju sa gubicima (loosy) koja iz slike izbacuje neke elemente (ne piksle nego sadržaj piksela) kako bi postigao veću kompresiju. U oba slučaja kompresija nema uticaja na rezoluciju a tema ove diskusije je REZOLUCIJA.

Ja se stvarno nadam da ćeš sada malo da istražiš temu i naučiš da jpeg kompresija nema ama baš nikave veze sa rezoluicjom i zašto JPG slike imaju manji kvalitet od BMP. Stvarno nije u redu da se i dalje sramotiš.

Kad smo kod toga, ako koristiš JEPG dovoljno velike rezolucije, onda se i gubljenje kvaliteta ne primećuje. Primećuje se samo na malim rezolucijama. Danas nije ništa neobično da se štampu šalje materijal u JPEG formatu ako je dovoljno velike rezolucije. Inače mi je čudno da taj tvoj štampar uopšte pominje BMP format. Sad prvi put čujem da ga neko tako koristi. Štampari uglavnom koriste JPEG, TIF i PDF, gde im je ovaj poslednji najzgodniji jer ne moraju da se bakću ni sa rezolucijama ni sa dimenzijama, ni sa kolor paletama, iako i u njemu slike mogu biti kompresovane kao JPEG.

Odgovor na pitanje pod dva: pa sam si rekao: rezolucija je 110 miliona piksela po cm2. Ako hoćeš, možeš da preračunaš i u dpi. Samo pazi da se ne zezneš: rezolucija u štampi se izražava gustinom po jedinici dužine, a ne površine.
[ @ 17.12.2017. 00:59 ] @
Znači: "Sujeta, moj omiljeni greh"? :)

Ajd što treći put "objašnjavaš" nešto što nisam pitao, ajd što nisam napisao ništa što bi ličilo na to da ako je slika bmp ili jpg ima veze sa rezolucijom, ajd i što ovde nije tema rezolucija nego bmp, jpg i "stvarne dimenzije, nego i ovo što pitam ne dopire do tebe, a to je: kako da u određivanju dimenzija učestvuje samo rezolucija a ne i kvalitet prikaza?

Ako planiraš da nastaviš sa sujetom, neznanjem, nesigurnošću u sebe, sramoćenjem i kako mi je kriva noga da predložimo selidbu teme u mad zone tamo su takvi "argumenti" popularni?
[ @ 17.12.2017. 01:00 ] @
Znači oko ima oko 110 Mpix? Ok.
[ Predrag Supurovic @ 17.12.2017. 14:50 ] @
Citat:
MajorFatal :
Ajd što treći put "objašnjavaš" nešto što nisam pitao, ajd što nisam napisao ništa što bi ličilo na to da ako je slika bmp ili jpg ima veze sa rezolucijom, ajd i što ovde nije tema rezolucija nego bmp, jpg i "stvarne dimenzije, nego i ovo što pitam ne dopire do tebe, a to je: kako da u određivanju dimenzija učestvuje samo rezolucija a ne i kvalitet prikaza?

Ako planiraš da nastaviš sa sujetom, neznanjem, nesigurnošću u sebe, sramoćenjem i kako mi je kriva noga da predložimo selidbu teme u mad zone tamo su takvi "argumenti" popularni?



Dečko, svako ko zna da čita može da pročita šta si ovde pitao i koliko puta i sasvim je jasno ko si i kako se ponašaš.

[ Predrag Supurovic @ 17.12.2017. 14:52 ] @
Citat:
MajorFatal :
Znači oko ima oko 110 Mpix? Ok.


To si ti zaključio, ne ja. Naprotiv, ja sam napisao nešto drugačije na tu temu.

Tvoja je specijalnost da pričaš nešto što veze sa temom enma i da razumeš odgovore onako kako nisu dati i da ljudiam u usta stavljaš ono što nisu rekli.

A sve zbog tvoje sujete potkrepljene neznanjem.
[ savkic @ 17.12.2017. 15:20 ] @
Molim Predraga i MajorFatala da licnu diskusiju prebace u privatne poruke, ako razgovor nije vezan za temu, nemojte pisati.
[ FranjoZG @ 19.12.2017. 16:06 ] @
tkaranovic to sam isprobao, ne daje uvijek ispravan rezultat. Vjerojatno ovisi o konverziji bmp -> jpg

Nisam se posljednjih dana "igrao" s tim jer sam imao drugih obavaze, ali me to čeka.

U svakom slućaju - hvala.
[ mjanjic @ 19.12.2017. 17:57 ] @
Ljudsko oko ima relativno veliku rezoluciju samo u centru vidnog polja, širine nekoliko stepeni, dok ka periferiji rezolucija (pa time i jasnoća slike) relativno brzo opada.

A što se tiče štampe, tu je najveći problem objasniti ljudima da 72dpi i 300dpi ne utiču na kvalitet slike (npr. jpeg format) ako slika ima isti broj piksela (npr. 1920x1080). Dpi ima uticaj samo ako hoćemo da odštampamo sliku dimenzija npr. 30x20cm, onda nije svejedno da li je 72dpi ili 300dpi, jer će kod 72dpi biti mnogo manje piksela po centimetru nego kod 300dpi. Kada imamo fiksnu dimenziju slike u pikselima, onda 72dpi i 300dpi utiču na dimenzije slike u centimetrima kada se ona ubaci u neki od programa tipa Corel/Illustrator i sl. Međutim, i ako je 72dpi, u nekom od tih programa se može svesti na željenu dimenziju u centimetrima, čime bi program trebao automatski da poveća dpi (jer se ne vrši umanjivanje broja piksela pri izmeni veličine slike, ali se to može uraditi na kraju pri kreiranju PDF-a za štampu, jer je poželjno odbaciti višak piksela kako bi kasnije RIP brže odradio posao.
[ tkaranovic @ 20.12.2017. 11:23 ] @
Za bmp moze da se koristi TBitmap na ovaj nacin:

Code (delphi):


type
   TGetTBitmapImageData = class(TSharedImage)
   private
     FHandle: HBITMAP;
     FMaskHandle: HBITMAP;
     FPalette: HPALETTE;
     FDIBHandle: HBITMAP;
     FDIB: TDIBSection;
   end;

   TGetTBitmapData = class(TGraphic)
   private
     FGetTBitmapImageData: TGetTBitmapImageData;
   end;
...

...
var
 bmp: TBitmap;
begin
 bmp := TBitmap.Create;
 try
   bmp.LoadFromFile('...bmp');
   ShowMessage(IntToStr(TGetTBitmapData(bmp).FGetTBitmapImageData.FDIB.dsBmih.biXPelsPerMeter));
 finally
   bmp.Free;
 end;
end;


 



To nije DPI a nije ni DPM nego su pikseli po metru. Znaci da treba da se metri pretvore u milimetre ili u sta treba.