Kako programirati program za listanje slika?

1

Kako programirati program za listanje slika?

offline
  • Pridružio: 11 Okt 2014
  • Poruke: 358

Ja ne znam skoro ništa oko programiranja, ali mi treba jedan program.
Treba mi program u kojem bi mogao da ubacim dosta slika (preko 600) i da imam opcije: rotacije ekrana, zoom, GO TO: pa ukucam broj stranice i prebaci me na tu stranicu, listanje slika i sl.
U kojem programskog jeziku se može ovo napraviti? Ja mislim da ovo nije teško napraviti, pa ako neko može da mi programira ovaj program (pa da mi pošalje), ili da mi objasni u kojem programskom jeziku i kako se može ovo napraviti.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 06 Feb 2012
  • Poruke: 1872

Zasto bas zelis da kreiras svoj program, pored toliko gotovih rjesenja, ako vec imas slabo znanje iz ove oblasti?
Koliko sam shvatio, tebi treba program za pregled fotografija... ili?
Objasni malo detaljnije sta ti treba, pa mozda se pojavi neko ko ce ti to uraditi.



offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14811
  • Gde živiš: Niš

Ako baš hoćeš nešto svoje, običan html i malo JS i začas možeš da imaš to što ti treba. Mada, kao što reče Sale, bilo koji pregledač fotografija može da završi posao. Jedino bi taj GoTo (reč je o nekom skeniranom dokumentu, zar ne?) falio.

offline
  • Pridružio: 11 Okt 2014
  • Poruke: 358

Ja sam htio da skeniram jednu knjigu, i kada pogledam sadržaj da sa pcijom GO TO odem na željenu stranicu. Puno mi je 600 strana da prelistavam ručno. Zato sam htio da u taj program ubacim sve slike i dodam neke opcije.
Pošto ne znam, ništa o HTML-u i JS, može li mi neko ko se razumije napraviti taj program?

offline
  • Pridružio: 10 Okt 2005
  • Poruke: 13526
  • Gde živiš: Beograd

Napravi PDF sa slikama - skenovima stranica, i tu imaš opciju da ideš na stranicu po izboru.
Napredniji PDF editori daju dodatne mogućnosti (pravljenje indeksa stranica, unos komentara...).

offline
  • Pridružio: 11 Okt 2014
  • Poruke: 358

Ok, hvala. .

offline
  • Pridružio: 14 Feb 2008
  • Poruke: 12391

Recimo da imaš folder u kom su nazivom fajlova isti sortirani redosledom.

Učitao bi putanje tih fajlova u program i eventualno dodatno sortirao tu neku listu koja drži putanje.
Kada bi korisnik kliknuo da prikaže sledeću fotografiju ti bi učitao fotografiju sa naredne putanje i prikazao je u tvom programu. Pre toga proveirš da li fajl postoji na putanji, u slučaju da se nešto izdešavalo u m eđuvremenu.
Kada bi hteo da ode na određenu fotografiju, pronašao bi putanju koja odgovara tom broju i učitao tu fotografiju.

Što se manipulacije slike tiče, ako bi radio u .NET okruženju mogao bi da koristiš GDI+ za to.
Mada za rotaciju fotke ne moraš GDI+ da koristiš već postoji neka fora sa bajtovima čini mi se.

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO; namespace WindowsFormsApp2 {     public partial class Form1 : Form     {         string[] Library;         int currImgIndex = 0;         public Form1()         {             InitializeComponent();         }         private void Form1_Load(object sender, EventArgs e)         {             Library = GetFilesFromLocalPath(@"C:\Test\");             ShowImage(currImgIndex);         }         string[] GetFilesFromLocalPath(string sourcePath)         {             string[] filesInPath = new string[0];             if (Directory.Exists(sourcePath))             {                 filesInPath = Directory.GetFiles(sourcePath);             }             return filesInPath;         }         void ShowImage(int index)         {             if (index >= 0 && index <= Library.Length - 1)             {                 pbMain.Image = Image.FromFile(Library[index]);                 Text = index.ToString();             }             else             {                 MessageBox.Show("That page does not exist");             }         }         private void btnNextImg_Click(object sender, EventArgs e)         {             if (currImgIndex < Library.Length-1)             {              currImgIndex++;             }             else             {                 MessageBox.Show("Last page reached");             }             ShowImage(currImgIndex);         }         private void btnPrevImg_Click(object sender, EventArgs e)         {             if (currImgIndex > 0)             {                 currImgIndex--;             }             else             {                 MessageBox.Show("First page reached");             }             ShowImage(currImgIndex);         }         private void btnGoToPage_Click(object sender, EventArgs e)         {             int CustomValue = Convert.ToInt32(nmGoToPage.Value);             ShowImage(CustomValue);         }     } }

C# .NET za jednostavan primer koji učitava fotke iz nekog foldera u niz i omogućava ti da ideš napred/nazad kroz taj niz. Tu je i mogućnost da ideš na stranicu po želji.

https://www.mycity.rs/must-login.png

offline
  • Pridružio: 11 Okt 2014
  • Poruke: 358

Napisano: 30 Jun 2017 22:19

Hvala Srki94

Dopuna: 30 Jun 2017 23:57

Srki94, možeš li mi detaljnije objasniti kako da dodam slike i gdje da upišem ovaj kod što si mi napisao. Ja ne znam ništa o programskim jezicima, tako da mi nije jasno. Preuzeo sam onaj fajl što si mi poslao.
Evo slika kada otvorim "WindowsFormsApp2"

offline
  • Pridružio: 14 Feb 2008
  • Poruke: 12391

Pokreni "WindowsFormsApp2.sln"
Kada dobiješ upozorenje vezano za sigurnost, klikni na OK.
Klikni na View > Solution Explorer
Dvoklik na Form1.cs kada u panelu sa strane.

Izgleda da se kod tebe nije učitao projekat. Pisan je u Visual Studio Community 2017 ediciji, pa ako imaš stariju verziju možda ne možeš da ga otvoriš ?

Kod ne kopiraš nigde jer sam ti poslao ceo projekat.
Fajlove kopiraš u C:\Test\

Međutim možeš sam da podesiš putanju tako što ćeš da proslediš drugu funkciji "GetFilesFromLocalPath".
Ovde samo promeniš putanju između navodnika.
 private void Form1_Load(object sender, EventArgs e)         {             Library = GetFilesFromLocalPath(@"C:\Test\");             ShowImage(currImgIndex);         }

offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14811
  • Gde živiš: Niš

Srki94 ::Što se manipulacije slike tiče, ako bi radio u .NET okruženju mogao bi da koristiš GDI+ za to.
Mada za rotaciju fotke ne moraš GDI+ da koristiš već postoji neka fora sa bajtovima čini mi se.
GDI+ je prespor za manipulaciju slikama, ali zato može da koristi unsafe blok u kome će da piše direktno C++ kod gde može da koristi standardne C++ pokazivače za pristup podacima slike, i time znatno da ubrza obradu. Mada, za rotaciju i zoom sigurno postoji i neka bibliotečka podrška.

Ko je trenutno na forumu
 

Ukupno su 862 korisnika na forumu :: 52 registrovanih, 4 sakrivenih i 806 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., aleksmajstor, Atomski čoban, babaroga, Bobrock1, bokisha253, BORUTUS, Dannyboy, dehhhhi, Denaya, Dimitrije Paunovic, dragoljub11987, DragoslavS, Frunze, hooraay, hyla, kikisp, kolle.the.kid, Koridor, krkalon, Kubovac, kybonacci, laurusri, Luka1998, Marko Marković, mercedesamg, Mercury, Mi lao shu, milenko crazy north, MiroslavD, mrav pesadinac, MrNo, Neutral-M, Oscar, procesor, raptorsi, rodoljub, S1Mk3, Shinobi, Smajser, Srle993, theNedjeljko, VJ, vladetije, vrag81, wizzardone, YU-UKI, Zoca, zziko, |_MeD_|, 125, 223223