| I.Ren |
| | Ecco qui il mio ultimo programma... Si tratta di 1 programma che ti legge i file .nbf . Mai sentiti i file nbf? beh sono il nuovo tipo di ebook creato da me! la sigla nbf significa n-new b-book f- file (nuovo file di libro). Il programma contiente il metodo di lettura, e anke l'editor per crearli.. come creare i file nbf è spiegato dentro il prog. Allego, insieme all'exe anke 2 esempi. se avete il compilatore di autoit, copiateli e incollateli nell'idle dell'editor, salvateli, e poi provaleli cn il prog. ESEMPIO # 1CODICE - ESEMPIO # 1 -
Vai avanti con la pagina, per vedere le informazioni di questa sintesi..
[para]Il Signore degli inganni è tornato dal passato, minacciando la pace della gente di Valle d’Ombra. E il saggio Allanon accorre da lontano per svelare a Shea la nobiltà delle sue origini e i misteri della magia. Perché solo Shea potrà conquistare la mitica spada di Shannara, il talismano capace di sconfiggere il Male e di restituire agli uomini la libertà , la concordia e la verità . L’eterna guerra tra il Bene e il Male si rinnova in questa avvincente storia ambientata nelle incantate Terre del Nord, dove si avverano i sogni e le leggende. Il romanzo che inaugura la più spettacolare saga “fantasy” degli ultimi anni. {nuovapagina} Titolo:
[para] La Spada di Shannara
Autore:
[para]Terry Brooks
Editore:
[para] Mondadori
Anno di pubblicazione: [para]2000
Pagine:
[para]612 ESEMPIO # 2CODICE - Esempio # 2 -
[Para] Scritta con paragrafo
Scritta senza paragrafo
P.S.: girate alla prossima pagina!
{nuovapagina}
Pagina 2
P.S.: girate alla prossima pagina!
{nuovapagina}
ESEMPIO # 2: [Para]Finito! CODICE PROGCODICE #NoTrayIcon #include <GUIConstants.au3> Global $npagine, $pagtemp, $pag, $szinfos, $i, $nSize, $nuovapagina Global $nCmdEnabled = False, $msgbox Global $white = 0xFFFFFF Local $o_speech = ObjCreate("SAPI.SpVoice") $gui = GUICreate("I.Ren New Ebook format reader v0.2", 493, 574, 193, 115) $Edit1 = GUICtrlCreateEdit("", 0, 0, 489, 513, BitOR($ES_WANTRETURN, $WS_VSCROLL, $ES_AUTOVSCROLL, $ES_READONLY)) GUICtrlSetFont(-1,9.5,Default,1,'arial') GUICtrlSetBkColor($Edit1, $white) $hMenu = GUICtrlCreateMenu("New Ebook format") $hMenu2 = GUICtrlCreateMenu(" Other") $hMenu3 = GUICtrlCreateMenu(" Nbf file editor and creator") $hApriEditor = GUICtrlCreateMenuItem("Open nbf file editor and creator",$hMenu3) $hleggi = GUICtrlCreateMenuItem("Speak text",$hMenu2) GUICtrlCreateMenuItem('',$hMenu2) $hAbout = GUICtrlCreateMenuItem("About",$hMenu2) $hapri = GUICtrlCreateMenuItem("Open New EBook format", $hMenu) GUICtrlCreateMenuItem('',$hMenu) $hinfo = GUICtrlCreateMenuItem("Pages Info", $hMenu) GUICtrlCreateMenuItem('',$hMenu) $hExit = GUICtrlCreateMenuItem("Exit", $hMenu) $hPrev = GUICtrlCreateButton("Previous Page", 89, 528, 77, 17, 0) $succ = GUICtrlCreateButton("Next Page", 344, 528, 73, 17, 0) $Input1 = GUICtrlCreateInput("", 216, 528, 49, 21, BitOR($ES_CENTER, $ES_AUTOHSCROLL, $ES_READONLY)) GUICtrlSetState(-1, $GUI_DISABLE) GUISetState(@SW_SHOW) If $cmdline[0] Then $pag = carica($cmdline[1], "{nuovapagina}") $nuovapagina = StringReplace($pag[1], "[para]", @CRLF ' ') GUICtrlSetData($Edit1, $nuovapagina) $npagine = 1 GUICtrlSetData($Input1, $npagine & "\" & $pag[0]) EndIf
While 1 Switch GUIGetMsg() Case $hApriEditor Call('Editor') Case $habout MsgBox(0x40,'About','Program created whit autoit v.3., by I.Ren'&@cr&'This program read EBooks (*.nbf). For create *.nbf file use the editor, in this program') Case $GUI_EVENT_CLOSE Exit Case $hleggi _Talk($o_speech, GUICtrlRead($edit1)) Case $hapri _carica() Case $hPrev If IsArray($pag) Then If $npagine = 1 Then MsgBox(0x10, "Error", "Reached the first page. Cannot go back") Else $nuovapagina = StringReplace($pag[$npagine - 1], "[para]", @CRLF & ' ') GUICtrlSetData($Edit1, $nuovapagina) $npagine = $npagine - 1 GUICtrlSetData($Input1, $npagine & "\" & $pag[0]) EndIf Else MsgBox(0x10, "Error", "Any EBook loaded!") EndIf Case $succ If IsArray($pag) Then If $npagine < $pag[0] Then $nuovapagina = StringReplace($pag[$npagine + 1], "[para]", @CRLF & ' ') GUICtrlSetData($Edit1, $nuovapagina) $npagine = $npagine + 1 GUICtrlSetData($Input1, $npagine & "\" & $pag[0]) Else MsgBox(0x40, "End of Book", "You have reached the end of your New EBook format") EndIf Else MsgBox(0x10, "Error", "Any EBook loaded!") EndIf Case $hexit Exit Case $hinfo If IsArray($pag) Then For $i = 1 To $pag[0] $nSize += StringLen($pag[$i]) Next MsgBox(0x40, "Book Info", "# Of Pages:" & $pag[0] & @CRLF & "# of letters:" & $nSize) Else MsgBox(0x10, "Error", "No New EBook format is loaded. No informaton to give") EndIf Case Else Sleep(20) EndSwitch WEnd
Func carica($sPath, $snuovpaginaDilemeter) Local $fData, $split If Not FileExists($sPath) Then Return -1 EndIf $fData = FileRead($sPath) $split = StringSplit($fData,$snuovpaginaDilemeter, 1) If Not IsArray($split) Then Return -1 EndIf Return $split EndFunc ;==>carica
Func _carica() $pagtemp = GUICtrlRead($Edit1) $fapri = FileOpenDialog("Open New EBook format", @DesktopDir, "New EBook format (*.nbf)") If @error Then MsgBox(0x10, "Error", "Error opening file") GUICtrlSetData($Edit1, $pagtemp) EndIf $pag = carica($fapri, "{nuovapagina}") $nuovapagina = StringReplace($pag[1], "[para]", @CRLF & ' ') GUICtrlSetData($Edit1, $nuovapagina) $npagine = 1 GUICtrlSetData($Input1, $npagine & "\" & $pag[0]) EndFunc Func _Talk(ByRef $o_speech, $s_text, $s_voice = 3) Local Const $SVSFlagsAsync = 1 Select Case $s_voice == 1 $o_speech.Voice = $o_speech.GetVoices ("Name=Microsoft Mary", "Language=409").Item (0) Case $s_voice == 2 $o_speech.Voice = $o_speech.GetVoices ("Name=Microsoft Mike", "Language=409").Item (0) Case $s_voice == 3 $o_speech.Voice = $o_speech.GetVoices ("Name=Microsoft Sam", "Language=409").Item (0) EndSelect $o_speech.Speak ($s_text, $SVSFlagsAsync) EndFunc ;==>_Talk
Func editor() $gui2 = GUICreate('Nbf file creator and editor',300,500) $hMenu4 = GUICtrlCreateMenu("Nbf file") $hSalva = GUICtrlCreateMenuItem("Salva",$hMenu4) $hApri2 = GUICtrlCreateMenuItem("Open",$hMenu4) $hElimina = GUICtrlCreateMenuItem("Delete NBF file",$hMenu4) $hMenu5 = GUICtrlCreateMenu("How to") $HcmCreare=GUICtrlCreateMenuItem(".. create NBF file",$hMenu5) GUICtrlCreateMenuItem('',$hMenu4) $hCiao = GUICtrlCreateMenuItem("Exit",$hMenu4) $AggPara = GUICtrlCreateButton('Add paragraph',2,2,80,20) $AggPag = GUICtrlCreateButton('Add page',90,2,80,20) $Edit2 = GUICtrlCreateEdit('',0,30,300,400,BitOR($ES_WANTRETURN, $WS_VSCROLL, $ES_AUTOVSCROLL)) GUICtrlSetFont(-1,9.5,Default,1,'arial')
GUISetState( )
While 1 Switch GUIGetMsg() Case $hCmCreare MsgBox(0,'How to..',' - Sorry this minguide is write in italian... wait the next version for the english version..'&@CR& 'Scrivete il vostro testo normalmente in questo editor, e se volete mettere dei paragrafi, scrivete [para] oppure premete il comodo pulsante xD' &@CR& 'Se volete aggiungere una pagina al vostro EBook, scrivete {nuovapagina} oppure premete anche qui il pulsante')
Case $hElimina $daEliminare = FileOpenDialog('Select NBF file to Delete',@desktopdir,'New EBook format (*.nbf)') If @error Then ;;; Else FileDelete($daEliminare) EndIf Case $hSalva $dove = FileSaveDialog('Save your NBF file',@desktopdir,'New EBook format (*.nbf)') If @error Then MsgBox(0x10,'Error!','Any file created!') Else FileWrite($dove & '.nbf',GUICtrlRead($edit2)) EndIf Case $hApri2 If GUICtrlRead($edit2) <> '' Then $file = FileOpenDialog('Open nfb file',@desktopdir,'New EBook format (*.nbf)') If @error Then ;;; Else GUICtrlSetData($Edit2,'') GUICtrlSetData($Edit2,FileRead($file)) EndIf Else $a = MsgBox(36,'Are you sure?','Are your sure to load file?') If $a = 6 Then $file = FileOpenDialog('Open nfb file',@desktopdir,'New EBook format (*.nbf)') If @error Then ;;; Else GUICtrlSetData($Edit2,'') GUICtrlSetData($Edit2,FileRead($file)) EndIf EndIf If $a = 7 Then ;;; EndIf EndIf Case $AggPag GUICtrlSetData($Edit2,GUICtrlRead($edit2) & "{nuovapagina}") Case $AggPara GUICtrlSetData($Edit2,GUICtrlRead($edit2) & "[Para]") Case $hCiao GUIDelete($gui2) ExitLoop Case $GUI_EVENT_CLOSE GUIDelete($gui2) ExitLoop EndSwitch WEnd EndFunc L'exe è qui sotto; ditemi che ne pensate!
| | |
| |
|