diff --git a/doc/代码泛读、标注、维护报告/UML代码.txt b/doc/代码泛读、标注、维护报告/UML代码.txt index 3086e77..a4988df 100644 --- a/doc/代码泛读、标注、维护报告/UML代码.txt +++ b/doc/代码泛读、标注、维护报告/UML代码.txt @@ -414,7 +414,398 @@ deactivate user @enduml +6.插入图片顺序图 +@startuml +title Minote Insert Image Sequence +skinparam sequenceParticipant underline +hide footbox + +actor User +participant NoteEditActivity<> +participant ImagePicker<> +participant ContentResolver<> +participant NoteEditor<> + +User -> NoteEditActivity: clickImageButton +activate NoteEditActivity +activate User + +NoteEditActivity -> ImagePicker: startActivityForResult(loadImage, PHOTO_REQUEST) +activate ImagePicker +ImagePicker --> User: displayImageSelector + +User -> ImagePicker: selectImage +ImagePicker --> NoteEditActivity: returnImageUri +deactivate ImagePicker + +NoteEditActivity -> ContentResolver: requestStoragePermission() +activate ContentResolver +ContentResolver --> NoteEditActivity: grantPermission +deactivate ContentResolver + +NoteEditActivity -> ContentResolver: getImagePath() +activate ContentResolver +ContentResolver --> NoteEditActivity: returnImagePath +deactivate ContentResolver + +NoteEditActivity -> NoteEditor: insertImageToEditor +activate NoteEditor +NoteEditor -> NoteEditor: convertToImage() +NoteEditor --> NoteEditActivity: completeInsertion +deactivate NoteEditor + +NoteEditActivity --> User: displayInsertedImage +deactivate NoteEditActivity + +@enduml + +6.字符数统计 +@startuml +title Minote Character Count Sequence +skinparam sequenceParticipant underline +hide footbox + +actor User +participant NoteEditActivity<> +participant NoteEditor<> +participant WorkingNote<> + +User -> NoteEditActivity: editText() +activate User +activate NoteEditActivity + +NoteEditActivity -> NoteEditor: addTextChangedListener(textWatcher) +activate NoteEditor + +NoteEditor -> NoteEditor: beforeTextChanged(text:CharSequence, start:int, count:int, after:int) +NoteEditor -> NoteEditor: onTextChanged(text:CharSequence, start:int, before:int, count:int) +NoteEditor -> NoteEditor: afterTextChanged(editable:Editable) + +NoteEditor -> WorkingNote: getWorkingText() +activate WorkingNote +WorkingNote -> WorkingNote: getText():String +WorkingNote --> NoteEditor: returnText +deactivate WorkingNote + + +NoteEditor --> NoteEditActivity: textChangeComplete +deactivate NoteEditor + +NoteEditActivity --> User: showCharacterCount +deactivate NoteEditActivity + +@enduml + +7.富文本 +@startuml +title Minote Rich Text Formatting Sequence +skinparam sequenceParticipant underline +hide footbox + +actor User +participant NoteEditText<> +participant PopupWindow<> +participant SpannableString<> +participant StyleSpan<> + +User -> NoteEditText: selectText(start:int, end:int) +activate NoteEditText +activate User + +NoteEditText -> NoteEditText: showFormatToolbar() +activate PopupWindow +NoteEditText -> PopupWindow: initFormatToolbar(context:Context, layout:int) +PopupWindow --> NoteEditText: toolbarCreated +deactivate PopupWindow + +User -> NoteEditText: clickStyleButton(styleType:int) +NoteEditText -> NoteEditText: applyStyle(style:int) + +NoteEditText -> NoteEditText: getSelectionStart +NoteEditText -> NoteEditText: getSelectionEnd +NoteEditText -> NoteEditText: getText(Spannable) + +alt style == STYLE_BOLD + NoteEditText -> StyleSpan: new StyleSpan(Typeface.BOLD) + activate StyleSpan + NoteEditText -> SpannableString: setSpan(span:StyleSpan, start:int, end:int, flags:int) + activate SpannableString + SpannableString --> NoteEditText: spanApplied + deactivate SpannableString + deactivate StyleSpan +else style == STYLE_HIGHLIGHT + NoteEditText -> SpannableString: new BackgroundColorSpan(Color.YELLOW) + activate SpannableString + NoteEditText -> SpannableString: setSpan(span:BackgroundColorSpan, start:int, end:int, flags:int) + SpannableString --> NoteEditText: spanApplied + deactivate SpannableString +else style == STYLE_ITALIC + NoteEditText -> StyleSpan: new StyleSpan(Typeface.ITALIC) + activate StyleSpan + NoteEditText -> SpannableString: setSpan(span:StyleSpan, start:int, end:int, flags:int) + activate SpannableString + SpannableString --> NoteEditText: spanApplied + deactivate SpannableString + deactivate StyleSpan +end + +NoteEditText -> NoteEditText: invalidate() +NoteEditText --> User: displayFormattedText +deactivate NoteEditText + +@enduml + +8.朗读 +@startuml +title Minote TTS (Text-to-Speech) Sequence +skinparam sequenceParticipant underline +hide footbox + +actor User +participant NoteEditActivity<> +participant SpeechSynthesizer<> +participant TtsListener<> +participant NoteEditor<> + +User -> NoteEditActivity: startTtsButton +activate User + +activate NoteEditActivity + +NoteEditActivity -> SpeechSynthesizer: createSynthesizer(context:Context, initListener:InitListener) +activate SpeechSynthesizer +SpeechSynthesizer --> NoteEditActivity: returnTtsInstance +deactivate SpeechSynthesizer + +User -> NoteEditActivity: clickTtsButton() +NoteEditActivity -> NoteEditor: getText():String +activate NoteEditor +NoteEditor --> NoteEditActivity: returnText +deactivate NoteEditor + +NoteEditActivity -> SpeechSynthesizer: setParameter(VOICE_NAME, "xiaoyan") +activate SpeechSynthesizer +NoteEditActivity -> SpeechSynthesizer: setParameter(SPEED, "50") +NoteEditActivity -> SpeechSynthesizer: setParameter(VOLUME, "80") +NoteEditActivity -> SpeechSynthesizer: setParameter(ENGINE_TYPE, TYPE_CLOUD) + +NoteEditActivity -> SpeechSynthesizer: startSpeaking(text:String, listener:TtsListener) +SpeechSynthesizer -> TtsListener: onSpeakBegin() +activate TtsListener + +alt success + SpeechSynthesizer -> TtsListener: onSpeakProgress(percent:int, beginPos:int, endPos:int) + TtsListener --> User: playingAudio + SpeechSynthesizer -> TtsListener: onCompleted(error:SpeechError) +else error + SpeechSynthesizer -> NoteEditActivity: returnErrorCode + NoteEditActivity --> User: showTip("语音合成失败") +end + +TtsListener --> SpeechSynthesizer: speakingComplete +deactivate TtsListener +SpeechSynthesizer --> NoteEditActivity: synthesisComplete +deactivate SpeechSynthesizer +User -> NoteEditActivity: clickStopButton() +NoteEditActivity -> SpeechSynthesizer: stopSpeaking() +activate SpeechSynthesizer +SpeechSynthesizer --> NoteEditActivity: stoppedSpeaking +deactivate SpeechSynthesizer + +NoteEditActivity --> User: ttsComplete +deactivate NoteEditActivity +deactivate User + +@enduml + +9.私密模式 +@startuml +title Minote Private Mode Content Masking Sequence +skinparam sequenceParticipant underline +hide footbox + +actor User +participant "NotesListActivity" as NotesListActivity <> +participant "NotesListAdapter" as NotesListAdapter <> +participant "NoteItemData" as NoteItemData <> +participant "WorkingNote" as WorkingNote <> + +User -> NotesListActivity: togglePrivateMode() +activate User +activate NotesListActivity + +NotesListActivity -> NotesListAdapter: setPrivateMode(isPrivate:boolean) +activate NotesListAdapter + +loop for each note item + NotesListAdapter -> NoteItemData: getSnippet(String) + activate NoteItemData + NoteItemData -> WorkingNote: getContent() + activate WorkingNote + WorkingNote --> NoteItemData: originalContent + deactivate WorkingNote + + alt isPrivate == true + NoteItemData -> NoteItemData: generateMaskedContent() + NoteItemData --> NotesListAdapter: coverwith"123456789" + else isPrivate == false + NoteItemData --> NotesListAdapter: originalContent + end + deactivate NoteItemData + +end + +NotesListAdapter -> NotesListAdapter: notifyDataSetChanged() +NotesListAdapter --> NotesListActivity: displayUpdated +deactivate NotesListAdapter + +NotesListActivity --> User: showUpdatedList +deactivate NotesListActivity +deactivate User + +@enduml + +10search +@startuml +title Minote Text Search Sequence +skinparam sequenceParticipant underline +hide footbox + +actor User +participant "NoteEditText" as NoteEditText <> +participant "SearchToolbar" as SearchToolbar <> +participant "InputMethodManager" as InputMethodManager <> +participant "EditText" as EditText <> +participant "Editable" as Editable <> +participant "Layout" as Layout <> + +User -> NoteEditText: clickSearchButton +activate User +activate NoteEditText + +NoteEditText -> SearchToolbar: showSearchToolbar +activate SearchToolbar + +SearchToolbar -> SearchToolbar: initializeViews +SearchToolbar -> EditText: requestFocus +activate EditText + +SearchToolbar -> InputMethodManager: showSoftInput(searchEditText, SHOW_IMPLICIT) +activate InputMethodManager +InputMethodManager --> EditText: showKeyboard +deactivate InputMethodManager + +User -> EditText: inputSearchText(text:String) +EditText -> SearchToolbar: onConfirmClick(text:String) +deactivate EditText + +SearchToolbar -> NoteEditText: performSearch(searchText:String) +deactivate SearchToolbar + +NoteEditText -> NoteEditText: clearSearchHighlights +NoteEditText -> Editable: getText +activate Editable +Editable --> NoteEditText: content +deactivate Editable + +loop for each match + NoteEditText -> NoteEditText: findNextMatch(content:String, searchText:String) + NoteEditText -> Editable: setSpan(BackgroundColorSpan, start:int, end:int, flags:int) + activate Editable + Editable --> NoteEditText: highlightApplied + deactivate Editable +end + +NoteEditText -> Layout: getLineForOffset(index:int) +activate Layout +Layout --> NoteEditText: lineNumber +NoteEditText -> Layout: getLineTop(line:int) +Layout --> NoteEditText: yPosition +deactivate Layout + +NoteEditText -> NoteEditText: scrollTo(0, yPosition) +NoteEditText --> User: displaySearchResults + +User -> SearchToolbar: clickCancelButton +activate SearchToolbar +SearchToolbar -> NoteEditText: clearSearchHighlights +SearchToolbar -> SearchToolbar: hideSearchToolbar +SearchToolbar -> InputMethodManager: hideSoftInputFromWindow +deactivate SearchToolbar + +NoteEditText --> User: restoreOriginalText +deactivate NoteEditText +deactivate User + +@enduml + +11.模板便签 +@startuml +title Minote Template Note Sequence +skinparam sequenceParticipant underline +hide footbox + +actor User +participant "NotesListActivity" as NotesListActivity <> +participant "AlertDialog" as AlertDialog <> +participant "NoteEditActivity" as NoteEditActivity <> +participant "WorkingNote" as WorkingNote <> +participant "NotesProvider" as NotesProvider <> +participant "ContentValues" as ContentValues <> + +activate User + +User -> NotesListActivity: clickNewNote() +activate NotesListActivity + +NotesListActivity -> AlertDialog: showTemplateDialog() +activate AlertDialog + +AlertDialog -> AlertDialog: setTitle("选择创建的便签") +AlertDialog -> AlertDialog: setItems(templateItems[]) + +User -> AlertDialog: selectTemplate(index:int) +AlertDialog --> NotesListActivity: createNewNote(templateType:int) +deactivate AlertDialog + +NotesListActivity -> WorkingNote: createNote(context:Context, folderId:long) +activate WorkingNote + +WorkingNote -> ContentValues: new ContentValues() +activate ContentValues +ContentValues --> WorkingNote: returnValues +deactivate ContentValues + +alt templateType == TEMPLATE_TYPE_1 + WorkingNote -> WorkingNote: setNoteValue("模板1预设内容") +else templateType == TEMPLATE_TYPE_2 + WorkingNote -> WorkingNote: setNoteValue("模板2预设内容") +else templateType == TEMPLATE_TYPE_3 + WorkingNote -> WorkingNote: setNoteValue("模板3预设内容") +end + +WorkingNote -> NotesProvider: insert(uri:Uri, values:ContentValues) +activate NotesProvider +NotesProvider --> WorkingNote: noteId:long +deactivate NotesProvider + +WorkingNote --> NotesListActivity: newNote +deactivate WorkingNote + +NotesListActivity -> NoteEditActivity: startActivity(intent:Intent) +activate NoteEditActivity +NoteEditActivity -> NoteEditActivity: loadNoteData(noteId:long) +NoteEditActivity --> User: displayTemplateNote +deactivate NoteEditActivity + +NotesListActivity -> NotesListActivity: showToast(templateName:String) +NotesListActivity --> User: templateCreated +deactivate NotesListActivity + +deactivate User + +@enduml 分界线以下是弃用的UML顺序图 diff --git a/doc/代码泛读、标注、维护报告/picture/seq5_Insert_Img.png b/doc/代码泛读、标注、维护报告/picture/seq5_Insert_Img.png new file mode 100644 index 0000000..7f0540d Binary files /dev/null and b/doc/代码泛读、标注、维护报告/picture/seq5_Insert_Img.png differ diff --git a/doc/代码泛读、标注、维护报告/picture/seq6_count.png b/doc/代码泛读、标注、维护报告/picture/seq6_count.png new file mode 100644 index 0000000..007d816 Binary files /dev/null and b/doc/代码泛读、标注、维护报告/picture/seq6_count.png differ diff --git a/doc/代码泛读、标注、维护报告/picture/seq7_Text.png b/doc/代码泛读、标注、维护报告/picture/seq7_Text.png new file mode 100644 index 0000000..47cb334 Binary files /dev/null and b/doc/代码泛读、标注、维护报告/picture/seq7_Text.png differ diff --git a/doc/代码泛读、标注、维护报告/picture/seq8_TtsSpeak.png b/doc/代码泛读、标注、维护报告/picture/seq8_TtsSpeak.png new file mode 100644 index 0000000..808f170 Binary files /dev/null and b/doc/代码泛读、标注、维护报告/picture/seq8_TtsSpeak.png differ diff --git a/doc/代码泛读、标注、维护报告/picture/seq9_secretmode.png b/doc/代码泛读、标注、维护报告/picture/seq9_secretmode.png new file mode 100644 index 0000000..309366a Binary files /dev/null and b/doc/代码泛读、标注、维护报告/picture/seq9_secretmode.png differ diff --git a/doc/代码泛读、标注、维护报告/picture/seq_10search.png b/doc/代码泛读、标注、维护报告/picture/seq_10search.png new file mode 100644 index 0000000..f3187d9 Binary files /dev/null and b/doc/代码泛读、标注、维护报告/picture/seq_10search.png differ diff --git a/doc/代码泛读、标注、维护报告/picture/seq_11templatenote.png b/doc/代码泛读、标注、维护报告/picture/seq_11templatenote.png new file mode 100644 index 0000000..b49b243 Binary files /dev/null and b/doc/代码泛读、标注、维护报告/picture/seq_11templatenote.png differ diff --git a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.aux b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.aux index c595f54..4684a33 100644 --- a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.aux +++ b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.aux @@ -76,85 +76,92 @@ \@writefile{lof}{\contentsline {figure}{\numberline {21}{\ignorespaces 维护前后xml文件数量对比——饼状图}}{33}{figure.caption.40}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {22}{\ignorespaces 维护前后代码数量对比——柱状图}}{34}{figure.caption.41}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {23}{\ignorespaces 维护前后代码数量对比——饼状图}}{34}{figure.caption.42}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.2}维护后的质量分析}{35}{subsubsection.3.3.2}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {24}{\ignorespaces 代码审查结果}}{35}{figure.caption.43}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {25}{\ignorespaces 代码审查结果}}{36}{figure.caption.44}\protected@file@percent } \gdef \LT@iv {\LT@entry + {1}{85.35156pt}\LT@entry + {1}{84.95157pt}\LT@entry + {1}{84.95157pt}\LT@entry + {1}{109.13788pt}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.2}各功能代码规模}{35}{subsubsection.3.3.2}\protected@file@percent } +\@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces 代码质量分析详细结果}}{35}{table.4}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.3}维护后的质量分析}{36}{subsubsection.3.3.3}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {24}{\ignorespaces 代码审查结果}}{36}{figure.caption.43}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {25}{\ignorespaces 代码审查结果}}{37}{figure.caption.44}\protected@file@percent } +\gdef \LT@v {\LT@entry {1}{85.35156pt}\LT@entry {1}{60.77263pt}\LT@entry {1}{326.8pt}} -\@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces 代码质量分析详细结果}}{37}{table.4}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}维护后的软件原型以及功能展示}{39}{subsection.3.4}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.1}设置界面背景}{39}{subsubsection.3.4.1}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {26}{\ignorespaces 设置背景1}}{39}{figure.caption.45}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {27}{\ignorespaces 设置背景按钮}}{39}{figure.caption.45}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {28}{\ignorespaces 设置背景2}}{39}{figure.caption.45}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.2}欢迎界面}{40}{subsubsection.3.4.2}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {29}{\ignorespaces 欢迎界面}}{40}{figure.caption.46}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.3}登录密码}{41}{subsubsection.3.4.3}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {30}{\ignorespaces 新增设置密码的操作}}{41}{figure.caption.47}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {31}{\ignorespaces 新增密码后的登录界面,要求输入密码}}{42}{figure.caption.48}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {32}{\ignorespaces 重新设置密码}}{43}{figure.caption.49}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {33}{\ignorespaces 使用原有的密码登录失败}}{44}{figure.caption.50}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {34}{\ignorespaces 删除设置的密码}}{45}{figure.caption.51}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {35}{\ignorespaces 登录密码的时序图}}{46}{figure.caption.52}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.4}翻译功能}{47}{subsubsection.3.4.4}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {36}{\ignorespaces 翻译功能中的将英文翻译为中文}}{47}{figure.caption.53}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {37}{\ignorespaces 翻译功能中将中文转化为英文}}{48}{figure.caption.54}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {38}{\ignorespaces 翻译功能中的还原操作}}{49}{figure.caption.55}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {39}{\ignorespaces 翻译功能的时序图}}{50}{figure.caption.56}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.5}插入图片}{51}{subsubsection.3.4.5}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {40}{\ignorespaces 将本地相册中的图片导入便签编辑界面中}}{51}{figure.caption.57}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.6}统计字符个数}{52}{subsubsection.3.4.6}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {41}{\ignorespaces 统计字符个数}}{52}{figure.caption.58}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.7}富文本功能}{53}{subsubsection.3.4.7}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {42}{\ignorespaces 富文本功能}}{53}{figure.caption.59}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {43}{\ignorespaces 加粗功能}}{53}{figure.caption.60}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {44}{\ignorespaces 斜体功能}}{53}{figure.caption.61}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {45}{\ignorespaces 删除线功能}}{54}{figure.caption.62}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {46}{\ignorespaces 高亮功能}}{54}{figure.caption.63}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.8}朗读功能}{55}{subsubsection.3.4.8}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {47}{\ignorespaces 朗读功能}}{55}{figure.caption.64}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.9}私密模式}{56}{subsubsection.3.4.9}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {48}{\ignorespaces 私密模式}}{56}{figure.caption.65}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {49}{\ignorespaces 退出私密模式}}{57}{figure.caption.66}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.10}笔记编辑内搜索}{58}{subsubsection.3.4.10}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {50}{\ignorespaces 笔记内搜索}}{58}{figure.caption.67}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {51}{\ignorespaces 笔记内搜索}}{59}{figure.caption.68}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.11}模板便签}{60}{subsubsection.3.4.11}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {52}{\ignorespaces 模板便签(a)}}{60}{figure.caption.69}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {53}{\ignorespaces 模板便签(b)}}{60}{figure.caption.69}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {54}{\ignorespaces 模版1}}{61}{figure.caption.70}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {55}{\ignorespaces 模版2}}{62}{figure.caption.71}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.12}语音听写}{63}{subsubsection.3.4.12}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {56}{\ignorespaces 语音听写(a)}}{63}{figure.caption.72}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {57}{\ignorespaces 语音听写(b)}}{63}{figure.caption.72}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {58}{\ignorespaces 语音听写的时序图}}{64}{figure.caption.73}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.13}语音合成}{65}{subsubsection.3.4.13}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {59}{\ignorespaces 语音合成}}{65}{figure.caption.74}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {60}{\ignorespaces 语音类型}}{66}{figure.caption.75}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {61}{\ignorespaces 音频类型}}{66}{figure.caption.75}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {62}{\ignorespaces 语音合成的时序图}}{67}{figure.caption.76}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.14}对话式大模型}{68}{subsubsection.3.4.14}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {63}{\ignorespaces 对话式大模型}}{68}{figure.caption.77}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {64}{\ignorespaces 对话式大模型的流程图}}{69}{figure.caption.78}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {65}{\ignorespaces 对话式大模型的时序图}}{70}{figure.caption.79}\protected@file@percent } -\gdef \LT@v {\LT@entry +\@writefile{lot}{\contentsline {table}{\numberline {5}{\ignorespaces 代码质量分析详细结果}}{38}{table.5}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}维护后的软件原型以及功能展示}{40}{subsection.3.4}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.1}设置界面背景}{40}{subsubsection.3.4.1}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {26}{\ignorespaces 设置背景1}}{40}{figure.caption.45}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {27}{\ignorespaces 设置背景按钮}}{40}{figure.caption.45}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {28}{\ignorespaces 设置背景2}}{40}{figure.caption.45}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.2}欢迎界面}{41}{subsubsection.3.4.2}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {29}{\ignorespaces 欢迎界面}}{41}{figure.caption.46}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.3}登录密码}{42}{subsubsection.3.4.3}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {30}{\ignorespaces 新增设置密码的操作}}{42}{figure.caption.47}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {31}{\ignorespaces 新增密码后的登录界面,要求输入密码}}{43}{figure.caption.48}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {32}{\ignorespaces 重新设置密码}}{44}{figure.caption.49}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {33}{\ignorespaces 使用原有的密码登录失败}}{45}{figure.caption.50}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {34}{\ignorespaces 删除设置的密码}}{46}{figure.caption.51}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {35}{\ignorespaces 登录密码的时序图}}{47}{figure.caption.52}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.4}翻译功能}{48}{subsubsection.3.4.4}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {36}{\ignorespaces 翻译功能中的将英文翻译为中文}}{48}{figure.caption.53}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {37}{\ignorespaces 翻译功能中将中文转化为英文}}{49}{figure.caption.54}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {38}{\ignorespaces 翻译功能中的还原操作}}{50}{figure.caption.55}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {39}{\ignorespaces 翻译功能的时序图}}{51}{figure.caption.56}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.5}插入图片}{52}{subsubsection.3.4.5}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {40}{\ignorespaces 将本地相册中的图片导入便签编辑界面中}}{52}{figure.caption.57}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.6}统计字符个数}{53}{subsubsection.3.4.6}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {41}{\ignorespaces 统计字符个数}}{53}{figure.caption.58}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.7}富文本功能}{54}{subsubsection.3.4.7}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {42}{\ignorespaces 富文本功能}}{54}{figure.caption.59}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {43}{\ignorespaces 加粗功能}}{54}{figure.caption.60}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {44}{\ignorespaces 斜体功能}}{54}{figure.caption.61}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {45}{\ignorespaces 删除线功能}}{55}{figure.caption.62}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {46}{\ignorespaces 高亮功能}}{55}{figure.caption.63}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.8}朗读功能}{56}{subsubsection.3.4.8}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {47}{\ignorespaces 朗读功能}}{56}{figure.caption.64}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.9}私密模式}{57}{subsubsection.3.4.9}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {48}{\ignorespaces 私密模式}}{57}{figure.caption.65}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {49}{\ignorespaces 退出私密模式}}{58}{figure.caption.66}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.10}笔记编辑内搜索}{59}{subsubsection.3.4.10}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {50}{\ignorespaces 笔记内搜索}}{59}{figure.caption.67}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {51}{\ignorespaces 笔记内搜索}}{60}{figure.caption.68}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.11}模板便签}{61}{subsubsection.3.4.11}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {52}{\ignorespaces 模板便签(a)}}{61}{figure.caption.69}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {53}{\ignorespaces 模板便签(b)}}{61}{figure.caption.69}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {54}{\ignorespaces 模版1}}{62}{figure.caption.70}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {55}{\ignorespaces 模版2}}{63}{figure.caption.71}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.12}语音听写}{64}{subsubsection.3.4.12}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {56}{\ignorespaces 语音听写(a)}}{64}{figure.caption.72}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {57}{\ignorespaces 语音听写(b)}}{64}{figure.caption.72}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {58}{\ignorespaces 语音听写的时序图}}{65}{figure.caption.73}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.13}语音合成}{66}{subsubsection.3.4.13}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {59}{\ignorespaces 语音合成}}{66}{figure.caption.74}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {60}{\ignorespaces 语音类型}}{67}{figure.caption.75}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {61}{\ignorespaces 音频类型}}{67}{figure.caption.75}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {62}{\ignorespaces 语音合成的时序图}}{68}{figure.caption.76}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.14}对话式大模型}{69}{subsubsection.3.4.14}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {63}{\ignorespaces 对话式大模型}}{69}{figure.caption.77}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {64}{\ignorespaces 对话式大模型的流程图}}{70}{figure.caption.78}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {65}{\ignorespaces 对话式大模型的时序图}}{71}{figure.caption.79}\protected@file@percent } +\gdef \LT@vi {\LT@entry {1}{36.9863pt}\LT@entry {1}{109.13788pt}\LT@entry {1}{99.46188pt}} -\@writefile{lot}{\contentsline {table}{\numberline {5}{\ignorespaces \relax }}{71}{table.5}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.15}撤回功能}{72}{subsubsection.3.4.15}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {66}{\ignorespaces 撤回功能}}{72}{figure.caption.80}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.16}获取地理位置}{73}{subsubsection.3.4.16}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {67}{\ignorespaces 获取地理位置}}{73}{figure.caption.81}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {68}{\ignorespaces 清除地理位置}}{73}{figure.caption.81}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {4}实践收获和体会}{74}{section.4}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}收获}{74}{subsection.4.1}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}体会}{74}{subsection.4.2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.3}参考文献与网址}{75}{subsection.4.3}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.1}讯飞智能API介绍}{75}{subsubsection.4.3.1}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.2}百度翻译API介绍}{75}{subsubsection.4.3.2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.3}UML建模}{75}{subsubsection.4.3.3}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.4}CodeArts质量分析}{75}{subsubsection.4.3.4}\protected@file@percent } -\gdef \@abspage@last{75} +\@writefile{lot}{\contentsline {table}{\numberline {6}{\ignorespaces \relax }}{72}{table.6}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.15}撤回功能}{73}{subsubsection.3.4.15}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {66}{\ignorespaces 撤回功能}}{73}{figure.caption.80}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.16}获取地理位置}{74}{subsubsection.3.4.16}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {67}{\ignorespaces 获取地理位置}}{74}{figure.caption.81}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {68}{\ignorespaces 清除地理位置}}{74}{figure.caption.81}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {4}实践收获和体会}{75}{section.4}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}收获}{75}{subsection.4.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}体会}{75}{subsection.4.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {4.3}参考文献与网址}{76}{subsection.4.3}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.1}讯飞智能API介绍}{76}{subsubsection.4.3.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.2}百度翻译API介绍}{76}{subsubsection.4.3.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.3}UML建模}{76}{subsubsection.4.3.3}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.4}CodeArts质量分析}{76}{subsubsection.4.3.4}\protected@file@percent } +\gdef \@abspage@last{76} diff --git a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.fdb_latexmk b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.fdb_latexmk index 546001a..564d5cc 100644 --- a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.fdb_latexmk +++ b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.fdb_latexmk @@ -1,9 +1,9 @@ # Fdb version 4 -["pdflatex"] 1736778723.92481 "d:/software engineering/xiaomi/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex" "小米便签泛读、标注和维护报告文档.pdf" "小米便签泛读、标注和维护报告文档" 1736778737.78584 0 +["pdflatex"] 1736843814.91422 "d:/software engineering/xiaomi/xiaomi/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex" "小米便签泛读、标注和维护报告文档.pdf" "小米便签泛读、标注和维护报告文档" 1736843825.83444 0 "c:/Windows/Fonts/msyh.ttc" 1733880346 19704352 1e10e74402e59d54499af795caf0b135 "" "c:/Windows/Fonts/simhei.ttf" 1711630440 9755440 983b60188a8e5a7c29c06c674f428b3d "" "c:/Windows/Fonts/simsun.ttc" 1733880347 18070492 992f2bdc407dde6953c5ed83ceac9a91 "" - "d:/software engineering/xiaomi/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex" 1736778727 76352 7465fbece638828b7152387c00c7c232 "" + "d:/software engineering/xiaomi/xiaomi/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex" 1736843824 82584 dae758449fd1570b84d8fd6105996838 "" "f:/texlive/2024/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.enc" 1735820179 2900 1537cc8184ad1792082cd229ecc269f4 "" "f:/texlive/2024/texmf-dist/fonts/map/fontname/texfonts.map" 1735821617 3524 cb3e574dea2d1052e39280babc910dc8 "" "f:/texlive/2024/texmf-dist/fonts/sfd/ttf2pk/UGBK.sfd" 1735864473 182544 bcd31d5d273400b38612a969fcab55f9 "" @@ -75,6 +75,7 @@ "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei8f.tfm" 1735865347 1172 e5ac568cbbb10c21a8919c10147ccf70 "" "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei90.tfm" 1735865347 1172 bf3a9ea28c06174042dcd642737f0ad2 "" "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei91.tfm" 1735865347 1172 af08f180dd0ec6a7129972d09ff61a98 "" + "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei94.tfm" 1735865347 1172 3342a075989efb631633f68dafc48654 "" "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei95.tfm" 1735865347 1172 5a7e9ba612e7803abcac167ef6c5a665 "" "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei96.tfm" 1735865346 1172 baafaa35cbf14b936974ec3a58b5f3e8 "" "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei97.tfm" 1735865346 1172 909826a1f69146e1bd8f119157e28fcd "" @@ -158,6 +159,7 @@ "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong99.tfm" 1735865347 1172 445e3c81b2f1f84601e454216cbde866 "" "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong9a.tfm" 1735865347 1172 37a3cd36cf03e67f393bee80b1370d05 "" "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong9e.tfm" 1735865347 1172 e797949130fb017e573d6826989dff50 "" + "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong9f.tfm" 1735865347 1172 9f5913528ac56c45715ab9430a95446c "" "f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisongff.tfm" 1735865347 1172 156175f4eaa9daea4e21b890ac9fafb8 "" "f:/texlive/2024/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb" 1735818841 32080 340ef9bf63678554ee606688e7b5339d "" "f:/texlive/2024/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb" 1735818841 35752 024fb6c41858982481f6968b5fc26508 "" @@ -257,81 +259,85 @@ "f:/texlive/2024/texmf-var/fonts/map/pdftex/updmap/pdftex.map" 1735865434 5513072 3c142b3aa2bb6151fbdf53ce8a9269ac "" "f:/texlive/2024/texmf-var/web2c/pdftex/pdflatex.fmt" 1735865800 8221527 dde4bcbd8a14ed93bb1ccc7dff478a23 "" "f:/texlive/2024/texmf.cnf" 1735865389 713 e69b156964470283e0530f5060668171 "" - "picture/1.1.png" 1736726509 100001 6f7d2c00d5d054ba695c8270700e1989 "" - "picture/12.png" 1736218785 359717 34a5050668b51b7c0376b40e435290a5 "" - "picture/13.png" 1736218785 298537 c759c6ea0536af13d4e0582d344a8023 "" - "picture/14.png" 1736218785 338379 00e80518314cb9787aa0c8090f491ab3 "" - "picture/15.png" 1736218785 353100 20995e0b8c379c7af2871ebdb6af1035 "" - "picture/16.png" 1736218785 278909 7f2c25f6b5b2dc812a75612b09adfbbf "" - "picture/17.png" 1736218785 100047 aabb46f1b3fbc1ed034d0e5c7946b9f9 "" - "picture/18.png" 1736218785 113123 354af39d06bfcd863d3263f64da4bf48 "" - "picture/19.png" 1736218785 108072 5aa4f57f5fbdcf17a29b3d33f3578bf1 "" - "picture/2.png" 1736218785 72226 ae35b6edbc55f9cef51841be6e5d69ae "" - "picture/20.png" 1736218785 101173 61394766c552290861a8d665c9ff2c7f "" - "picture/21.png" 1736218785 95200 b4a5a0c74c83deb21355d65015e87bf1 "" - "picture/22.png" 1736218785 337255 2b60da7be806b1b17edcabe32c7b5952 "" - "picture/23.png" 1736218785 130416 aac6613a0320fc9640bc3ce39d723c4b "" - "picture/24.png" 1736218785 105456 ec3d5bfb8ee2a1c09c753443fb53dbb2 "" - "picture/25.png" 1736218785 134114 a7e7d8954fb77cb198d3a66695b221ec "" - "picture/26.png" 1736218785 134852 6f58cedb22cf13cbf693fd4531bb9309 "" - "picture/27.png" 1736218785 135063 a736b025ceba4c4cec4ca50cc852c6f2 "" - "picture/28.png" 1736218785 125615 ce2e5aaf0bcf5c3c3e34060ced136e8b "" - "picture/29.png" 1736218785 102928 c8dfe55924d27079e7cd00a996973ea4 "" - "picture/30.png" 1736218785 148888 15afa99a9d2975e8e80daf48379f1a9f "" - "picture/31.png" 1736218785 18378 95c5f077f665189bdba59e8c142ec14a "" - "picture/32.png" 1736218785 18063 b0c594d2abd1e8ca39958519d328357d "" - "picture/33.png" 1736218785 18546 3cfd1337f3288a2f0199060826dfc9fc "" - "picture/34.png" 1736218785 18439 d5b3c5244a2c3c0ddffaa69f0df741e9 "" - "picture/35.png" 1736218785 17579 4d78bd00353277483189f98712d9e4b7 "" - "picture/36.png" 1736218785 68009 a5842c173acf23b6f97b659634718b6d "" - "picture/37.png" 1736218785 283915 45d99bc11e85e6013d267a22ffc10607 "" - "picture/38.png" 1736218785 337153 b0bba29e3ef6acd6ea921530b94b6e27 "" - "picture/39.png" 1736218785 202762 c54197216340fdf254d8611660aacbc6 "" - "picture/4.png" 1736218785 39580 a23f91f7205a3d7444351d24e4107a91 "" - "picture/40.png" 1736218785 345182 fe0f99d7d5cafda530004723fa3530a8 "" - "picture/41.png" 1736218785 162089 9c3082c7c2d030d74c2a7d9b37184d66 "" - "picture/42.png" 1736218785 166236 d3b6c66b4226d58a98c0a3868759ee82 "" - "picture/46.png" 1736218785 54399 cb9671a4469b22701520d322df2f863c "" - "picture/47.png" 1736218785 16390 91c22e93ca62e82c065c249e0961f45c "" - "picture/48.png" 1736218785 59699 b64a5f2dd105938ffbe25090e832afb0 "" - "picture/7.png" 1736218785 27326 f356481d8ec0d433004bfc710f39a61d "" - "picture/8.png" 1736218785 51137 d7050f61e5db8c949f5559225f2c97d0 "" - "picture/9.png" 1736218785 107915 e3ace6c72f757cea414dfe2d2b637b9c "" - "picture/CodeArts-lastest-1.png" 1736389071 182715 5baf5aa420b4ba410bb99f2ebd1fde1a "" - "picture/CodeArts-master.png" 1736389071 330488 0d8a68423fb09ad6dd559eee401b2c01 "" - "picture/Data bar Chart -java.png" 1736343573 141503 5a33720f0e231500731e2c93b38b0207 "" - "picture/Data bar Chart -xml.png" 1736343573 128685 5c4ac7b145e525b6d0b742a15827f94d "" - "picture/Data pie Chart -java.png" 1736343573 209851 630cfd9010dd9c1d0b03a54a9228dbab "" - "picture/Data pie Chart -xml.png" 1736343573 214977 2cc96f7931facb23356b9edded8a0b97 "" - "picture/Dialogue-based large models.png" 1736343573 178500 4f885e4fcb96f7724a758732a10e3221 "" - "picture/Merge data bar chart.png" 1736343573 120528 950ef5e5720007d091150da992ccc542 "" - "picture/Merge data pie charts.png" 1736343573 184799 ba673fa0d1c77ae0ac7550d7a9322782 "" - "picture/Obtain the geographical location schematic diagram 1.png" 1736343573 97035 19df3cec920de0fab03dd6acddcaabab "" - "picture/Obtain the geographical location schematic diagram 2.png" 1736343573 111512 ac00bda5ec6f8571b45dac1b54f1dc9f "" - "picture/Speech synthesis diagram 1.png" 1736343573 134738 3ecdda3cf1a678992e1e13a26d1627fe "" - "picture/Speech synthesis diagram 2.png" 1736343573 136365 b53e9a84cf8eeb2a0242d3c163b2d909 "" - "picture/Speech synthesis diagram 3.png" 1736343573 107777 36a3f1a5fa826d8893d9dadde11d9aa7 "" - "picture/Structure Package.png" 1736562047 35143 9c39b4cdb8f40083b738c7d1c11101a6 "" - "picture/Template tag 1.png" 1736343573 277781 fd35e861b6e1fecf12886f293ff7880c "" - "picture/Template tag 2.png" 1736343573 117857 d3ef395ee7cd59da9f9d50e57bff4bf9 "" - "picture/Undo function1.png" 1736343573 155642 ce9508ca0dbeffc9b974e1db6fcaa2a3 "" - "picture/java-1.png" 1736510444 415152 453c9ced2e2ed9e83fe2d6def5a1224e "" - "picture/java-2.png" 1736510444 406150 9a95741d69b82489b464c09f1a5e4342 "" - "picture/linsten1.png" 1736343573 127493 917af4d9e9a825fc5d880da416ac4215 "" - "picture/linsten2.png" 1736343573 110317 882eb85892fb092e3b2ede72861658ad "" - "picture/packet.png" 1736562047 179675 b07b7f7c0c89b7149dd9c4f633e72d14 "" - "picture/seq12_Iat.png" 1736386716 107614 f6d35d0debaea4e2c890cfabbe9b6295 "" - "picture/seq13_Tts.png" 1736386575 115127 c6b0c5b6541fedabc431148697abea44 "" - "picture/seq14-LL.png" 1736510444 271500 ef5430b085847fdae02c9e2d2a9e67d0 "" - "picture/seq14-LLM.png" 1736510444 81524 5b80de9b4e3ff92445955625f9fb4951 "" - "picture/seq3_Login.png" 1736388624 145119 af311b15513fdde25d4a0ac67688636e "" - "picture/seq4_Translate.png" 1736387133 62766 173286a4c767290d23bb3717f33cddd8 "" - "picture/xml-1.png" 1736510444 369276 6cc1d9a530cec03be55c53296252d485 "" - "picture/xml-2.png" 1736510444 572565 ba5fa1e4c851a9aea36bd41b76257b55 "" - "小米便签泛读、标注和维护报告文档.aux" 1736778735 17876 4b46415bcb7df2b3e306d48ed64518bf "pdflatex" - "小米便签泛读、标注和维护报告文档.out" 1736778735 4655 886cedc25fdd6659027156306efe92a0 "pdflatex" - "小米便签泛读、标注和维护报告文档.tex" 1736778727 76352 7465fbece638828b7152387c00c7c232 "" - "小米便签泛读、标注和维护报告文档.toc" 1736778735 4792 e23b5b3624a04a8a23fa97906b42b8cb "pdflatex" + "picture/1.1.png" 1736836183 100001 6f7d2c00d5d054ba695c8270700e1989 "" + "picture/111.png" 1736836183 122594 bb8c2de5b3391239d30ed1752a887e78 "" + "picture/112.png" 1736836183 505304 299da676b0adb190c99a07a85e830076 "" + "picture/113.png" 1736836183 202995 d2464340aa5352526764f08d505e846b "" + "picture/114.png" 1736836183 150157 dba5d060dc27662015deaa296b696feb "" + "picture/12.png" 1736836183 359717 34a5050668b51b7c0376b40e435290a5 "" + "picture/13.png" 1736836183 298537 c759c6ea0536af13d4e0582d344a8023 "" + "picture/14.png" 1736836183 338379 00e80518314cb9787aa0c8090f491ab3 "" + "picture/15.png" 1736836183 353100 20995e0b8c379c7af2871ebdb6af1035 "" + "picture/16.png" 1736836183 278909 7f2c25f6b5b2dc812a75612b09adfbbf "" + "picture/17.png" 1736836183 100047 aabb46f1b3fbc1ed034d0e5c7946b9f9 "" + "picture/18.png" 1736836183 113123 354af39d06bfcd863d3263f64da4bf48 "" + "picture/19.png" 1736836183 108072 5aa4f57f5fbdcf17a29b3d33f3578bf1 "" + "picture/2.png" 1736836183 72226 ae35b6edbc55f9cef51841be6e5d69ae "" + "picture/20.png" 1736836183 101173 61394766c552290861a8d665c9ff2c7f "" + "picture/21.png" 1736836183 95200 b4a5a0c74c83deb21355d65015e87bf1 "" + "picture/22.png" 1736836183 337255 2b60da7be806b1b17edcabe32c7b5952 "" + "picture/23.png" 1736836183 130416 aac6613a0320fc9640bc3ce39d723c4b "" + "picture/24.png" 1736836183 105456 ec3d5bfb8ee2a1c09c753443fb53dbb2 "" + "picture/25.png" 1736836183 134114 a7e7d8954fb77cb198d3a66695b221ec "" + "picture/26.png" 1736836183 134852 6f58cedb22cf13cbf693fd4531bb9309 "" + "picture/27.png" 1736836183 135063 a736b025ceba4c4cec4ca50cc852c6f2 "" + "picture/28.png" 1736836183 125615 ce2e5aaf0bcf5c3c3e34060ced136e8b "" + "picture/29.png" 1736836183 102928 c8dfe55924d27079e7cd00a996973ea4 "" + "picture/30.png" 1736836183 148888 15afa99a9d2975e8e80daf48379f1a9f "" + "picture/31.png" 1736836183 18378 95c5f077f665189bdba59e8c142ec14a "" + "picture/32.png" 1736836183 18063 b0c594d2abd1e8ca39958519d328357d "" + "picture/33.png" 1736836183 18546 3cfd1337f3288a2f0199060826dfc9fc "" + "picture/34.png" 1736836183 18439 d5b3c5244a2c3c0ddffaa69f0df741e9 "" + "picture/35.png" 1736836183 17579 4d78bd00353277483189f98712d9e4b7 "" + "picture/36.png" 1736836183 68009 a5842c173acf23b6f97b659634718b6d "" + "picture/37.png" 1736836183 283915 45d99bc11e85e6013d267a22ffc10607 "" + "picture/38.png" 1736836183 337153 b0bba29e3ef6acd6ea921530b94b6e27 "" + "picture/39.png" 1736836183 202762 c54197216340fdf254d8611660aacbc6 "" + "picture/4.png" 1736836183 39580 a23f91f7205a3d7444351d24e4107a91 "" + "picture/40.png" 1736836183 345182 fe0f99d7d5cafda530004723fa3530a8 "" + "picture/41.png" 1736836183 162089 9c3082c7c2d030d74c2a7d9b37184d66 "" + "picture/42.png" 1736836183 166236 d3b6c66b4226d58a98c0a3868759ee82 "" + "picture/46.png" 1736836183 54399 cb9671a4469b22701520d322df2f863c "" + "picture/47.png" 1736836183 16390 91c22e93ca62e82c065c249e0961f45c "" + "picture/48.png" 1736836183 59699 b64a5f2dd105938ffbe25090e832afb0 "" + "picture/7.png" 1736836183 27326 f356481d8ec0d433004bfc710f39a61d "" + "picture/8.png" 1736836183 51137 d7050f61e5db8c949f5559225f2c97d0 "" + "picture/9.png" 1736836183 107915 e3ace6c72f757cea414dfe2d2b637b9c "" + "picture/CodeArts-lastest-1.png" 1736836183 182715 5baf5aa420b4ba410bb99f2ebd1fde1a "" + "picture/CodeArts-master.png" 1736836183 330488 0d8a68423fb09ad6dd559eee401b2c01 "" + "picture/Data bar Chart -java.png" 1736836183 141503 5a33720f0e231500731e2c93b38b0207 "" + "picture/Data bar Chart -xml.png" 1736836183 128685 5c4ac7b145e525b6d0b742a15827f94d "" + "picture/Data pie Chart -java.png" 1736836183 209851 630cfd9010dd9c1d0b03a54a9228dbab "" + "picture/Data pie Chart -xml.png" 1736836183 214977 2cc96f7931facb23356b9edded8a0b97 "" + "picture/Dialogue-based large models.png" 1736836183 178500 4f885e4fcb96f7724a758732a10e3221 "" + "picture/Merge data bar chart.png" 1736836183 120528 950ef5e5720007d091150da992ccc542 "" + "picture/Merge data pie charts.png" 1736836183 184799 ba673fa0d1c77ae0ac7550d7a9322782 "" + "picture/Obtain the geographical location schematic diagram 1.png" 1736836183 97035 19df3cec920de0fab03dd6acddcaabab "" + "picture/Obtain the geographical location schematic diagram 2.png" 1736836183 111512 ac00bda5ec6f8571b45dac1b54f1dc9f "" + "picture/Speech synthesis diagram 1.png" 1736836183 134738 3ecdda3cf1a678992e1e13a26d1627fe "" + "picture/Speech synthesis diagram 2.png" 1736836183 136365 b53e9a84cf8eeb2a0242d3c163b2d909 "" + "picture/Speech synthesis diagram 3.png" 1736836183 107777 36a3f1a5fa826d8893d9dadde11d9aa7 "" + "picture/Structure Package.png" 1736836183 35143 9c39b4cdb8f40083b738c7d1c11101a6 "" + "picture/Template tag 1.png" 1736836183 277781 fd35e861b6e1fecf12886f293ff7880c "" + "picture/Template tag 2.png" 1736836183 117857 d3ef395ee7cd59da9f9d50e57bff4bf9 "" + "picture/Undo function1.png" 1736836183 155642 ce9508ca0dbeffc9b974e1db6fcaa2a3 "" + "picture/java-1.png" 1736836183 415152 453c9ced2e2ed9e83fe2d6def5a1224e "" + "picture/java-2.png" 1736836183 406150 9a95741d69b82489b464c09f1a5e4342 "" + "picture/linsten1.png" 1736836183 127493 917af4d9e9a825fc5d880da416ac4215 "" + "picture/linsten2.png" 1736836183 110317 882eb85892fb092e3b2ede72861658ad "" + "picture/packet.png" 1736836183 179675 b07b7f7c0c89b7149dd9c4f633e72d14 "" + "picture/seq12_Iat.png" 1736836183 107614 f6d35d0debaea4e2c890cfabbe9b6295 "" + "picture/seq13_Tts.png" 1736836183 115127 c6b0c5b6541fedabc431148697abea44 "" + "picture/seq14-LL.png" 1736836183 271500 ef5430b085847fdae02c9e2d2a9e67d0 "" + "picture/seq14_chatLLM.png" 1736836183 87469 c8618935124d9a5d5ff84c21c399bfc5 "" + "picture/seq3_Login.png" 1736836183 145119 af311b15513fdde25d4a0ac67688636e "" + "picture/seq4_Translate.png" 1736836183 62766 173286a4c767290d23bb3717f33cddd8 "" + "picture/xml-1.png" 1736836183 369276 6cc1d9a530cec03be55c53296252d485 "" + "picture/xml-2.png" 1736836183 572565 ba5fa1e4c851a9aea36bd41b76257b55 "" + "小米便签泛读、标注和维护报告文档.aux" 1736843824 19314 1afc4eb2ea1a0c21b2fa9341ee796bfc "pdflatex" + "小米便签泛读、标注和维护报告文档.out" 1736843824 4879 a3391b03f8d4bb0a0afc05053738784c "pdflatex" + "小米便签泛读、标注和维护报告文档.tex" 1736843824 82584 dae758449fd1570b84d8fd6105996838 "" + "小米便签泛读、标注和维护报告文档.toc" 1736843824 5168 8c39aad8b75c255cc64a2dbe887f9ae1 "pdflatex" (generated) "小米便签泛读、标注和维护报告文档.aux" "小米便签泛读、标注和维护报告文档.log" diff --git a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.fls b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.fls index 2d633f2..0bbbc21 100644 --- a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.fls +++ b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.fls @@ -1,8 +1,8 @@ -PWD d:/software engineering/xiaomi/xiaomi/doc/代码泛读、标注、维护报告 +PWD d:/software engineering/xiaomi/xiaomi/xiaomi/doc/代码泛读、标注、维护报告 INPUT f:/texlive/2024/texmf.cnf INPUT f:/texlive/2024/texmf-dist/web2c/texmf.cnf INPUT f:/texlive/2024/texmf-var/web2c/pdftex/pdflatex.fmt -INPUT d:/software engineering/xiaomi/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex +INPUT d:/software engineering/xiaomi/xiaomi/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex OUTPUT 小米便签泛读、标注和维护报告文档.log INPUT f:/texlive/2024/texmf-dist/tex/latex/base/article.cls INPUT f:/texlive/2024/texmf-dist/tex/latex/base/article.cls @@ -298,6 +298,7 @@ INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong71.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong59.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei68.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong90.tfm +INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong5d.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong58.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei52.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei80.tfm @@ -307,7 +308,6 @@ INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei7e.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong7f.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong84.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong9a.tfm -INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong5d.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong81.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong6b.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong94.tfm @@ -567,6 +567,19 @@ INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei5e.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei6e.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei66.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei6d.tfm +INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong9f.tfm +INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei79.tfm +INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei94.tfm +INPUT ./picture/113.png +INPUT ./picture/113.png +INPUT ./picture/113.png +INPUT ./picture/113.png +INPUT ./picture/113.png +INPUT ./picture/112.png +INPUT ./picture/112.png +INPUT ./picture/112.png +INPUT ./picture/112.png +INPUT ./picture/112.png INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei78.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei65.tfm INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei91.tfm @@ -780,7 +793,6 @@ INPUT ./picture/36.png INPUT ./picture/36.png INPUT ./picture/36.png INPUT ./picture/36.png -INPUT f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei79.tfm INPUT ./picture/37.png INPUT ./picture/37.png INPUT ./picture/37.png @@ -841,6 +853,16 @@ INPUT ./picture/Template tag 2.png INPUT ./picture/Template tag 2.png INPUT ./picture/Template tag 2.png INPUT ./picture/Template tag 2.png +INPUT ./picture/111.png +INPUT ./picture/111.png +INPUT ./picture/111.png +INPUT ./picture/111.png +INPUT ./picture/111.png +INPUT ./picture/114.png +INPUT ./picture/114.png +INPUT ./picture/114.png +INPUT ./picture/114.png +INPUT ./picture/114.png INPUT ./picture/linsten1.png INPUT ./picture/linsten1.png INPUT ./picture/linsten1.png @@ -886,11 +908,11 @@ INPUT ./picture/seq14-LL.png INPUT ./picture/seq14-LL.png INPUT ./picture/seq14-LL.png INPUT ./picture/seq14-LL.png -INPUT ./picture/seq14-LLM.png -INPUT ./picture/seq14-LLM.png -INPUT ./picture/seq14-LLM.png -INPUT ./picture/seq14-LLM.png -INPUT ./picture/seq14-LLM.png +INPUT ./picture/seq14_chatLLM.png +INPUT ./picture/seq14_chatLLM.png +INPUT ./picture/seq14_chatLLM.png +INPUT ./picture/seq14_chatLLM.png +INPUT ./picture/seq14_chatLLM.png INPUT ./picture/Undo function1.png INPUT ./picture/Undo function1.png INPUT ./picture/Undo function1.png @@ -932,6 +954,8 @@ INPUT c:/Windows/Fonts/simhei.ttf INPUT c:/Windows/Fonts/simhei.ttf INPUT c:/Windows/Fonts/simhei.ttf INPUT c:/Windows/Fonts/simhei.ttf +INPUT c:/Windows/Fonts/simsun.ttc +INPUT c:/Windows/Fonts/simhei.ttf INPUT c:/Windows/Fonts/simhei.ttf INPUT c:/Windows/Fonts/simsun.ttc INPUT c:/Windows/Fonts/simhei.ttf @@ -986,7 +1010,6 @@ INPUT c:/Windows/Fonts/simsun.ttc INPUT c:/Windows/Fonts/simsun.ttc INPUT c:/Windows/Fonts/simsun.ttc INPUT c:/Windows/Fonts/simsun.ttc -INPUT c:/Windows/Fonts/simsun.ttc INPUT c:/Windows/Fonts/simhei.ttf INPUT c:/Windows/Fonts/simhei.ttf INPUT c:/Windows/Fonts/simsun.ttc @@ -1035,6 +1058,7 @@ INPUT c:/Windows/Fonts/simsun.ttc INPUT c:/Windows/Fonts/simsun.ttc INPUT c:/Windows/Fonts/simsun.ttc INPUT c:/Windows/Fonts/simsun.ttc +INPUT c:/Windows/Fonts/simsun.ttc INPUT c:/Windows/Fonts/simhei.ttf INPUT c:/Windows/Fonts/simhei.ttf INPUT c:/Windows/Fonts/simsun.ttc diff --git a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.log b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.log index 14c23b9..b4911c2 100644 --- a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.log +++ b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.log @@ -1,15 +1,15 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024) (preloaded format=pdflatex 2024.10.11) 14 JAN 2025 11:31 +This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024) (preloaded format=pdflatex 2025.1.3) 14 JAN 2025 16:36 entering extended mode restricted \write18 enabled. file:line:error style messages enabled. %&-line parsing enabled. -**e:/desktop/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档 -(e:/desktop/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex +**"d:/software engineering/xiaomi/xiaomi/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex" +(d:/software engineering/xiaomi/xiaomi/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex LaTeX2e <2023-11-01> patch level 1 L3 programming layer <2024-02-20> -(c:/texlive/2024/texmf-dist/tex/latex/base/article.cls +(f:/texlive/2024/texmf-dist/tex/latex/base/article.cls Document Class: article 2023/05/17 v1.4n Standard LaTeX document class -(c:/texlive/2024/texmf-dist/tex/latex/base/size12.clo +(f:/texlive/2024/texmf-dist/tex/latex/base/size12.clo File: size12.clo 2023/05/17 v1.4n Standard LaTeX file (size option) ) \c@part=\count188 @@ -23,21 +23,21 @@ File: size12.clo 2023/05/17 v1.4n Standard LaTeX file (size option) \abovecaptionskip=\skip48 \belowcaptionskip=\skip49 \bibindent=\dimen140 -) (c:/texlive/2024/texmf-dist/tex/latex/ctex/ctex.sty (c:/texlive/2024/texmf-dist/tex/latex/l3kernel/expl3.sty +) (f:/texlive/2024/texmf-dist/tex/latex/ctex/ctex.sty (f:/texlive/2024/texmf-dist/tex/latex/l3kernel/expl3.sty Package: expl3 2024-02-20 L3 programming layer (loader) - (c:/texlive/2024/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def + (f:/texlive/2024/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def File: l3backend-pdftex.def 2024-02-20 L3 backend support: PDF output (pdfTeX) \l__color_backend_stack_int=\count196 \l__pdf_internal_box=\box51 )) Package: ctex 2022/07/14 v2.5.10 Chinese adapter in LaTeX (CTEX) - (c:/texlive/2024/texmf-dist/tex/latex/ctex/ctexhook.sty + (f:/texlive/2024/texmf-dist/tex/latex/ctex/ctexhook.sty Package: ctexhook 2022/07/14 v2.5.10 Document and package hooks (CTEX) -) (c:/texlive/2024/texmf-dist/tex/latex/ctex/ctexpatch.sty +) (f:/texlive/2024/texmf-dist/tex/latex/ctex/ctexpatch.sty Package: ctexpatch 2022/07/14 v2.5.10 Patching commands (CTEX) -) (c:/texlive/2024/texmf-dist/tex/latex/base/fix-cm.sty +) (f:/texlive/2024/texmf-dist/tex/latex/base/fix-cm.sty Package: fix-cm 2020/11/24 v1.1t fixes to LaTeX - (c:/texlive/2024/texmf-dist/tex/latex/base/ts1enc.def + (f:/texlive/2024/texmf-dist/tex/latex/base/ts1enc.def File: ts1enc.def 2001/06/05 v3.0e (jk/car/fm) Standard LaTeX file LaTeX Font Info: Redeclaring font encoding TS1 on input line 47. )) @@ -46,29 +46,29 @@ LaTeX Font Info: Redeclaring font encoding TS1 on input line 47. \l__ctex_tmp_dim=\dimen141 \g__ctex_section_depth_int=\count198 \g__ctex_font_size_int=\count199 - (c:/texlive/2024/texmf-dist/tex/latex/ctex/config/ctexopts.cfg + (f:/texlive/2024/texmf-dist/tex/latex/ctex/config/ctexopts.cfg File: ctexopts.cfg 2022/07/14 v2.5.10 Option configuration file (CTEX) ) Package ctex Warning: UTF8 will be used as the default encoding. -(c:/texlive/2024/texmf-dist/tex/latex/ctex/engine/ctex-engine-pdftex.def +(f:/texlive/2024/texmf-dist/tex/latex/ctex/engine/ctex-engine-pdftex.def File: ctex-engine-pdftex.def 2022/07/14 v2.5.10 (pdf)LaTeX adapter (CTEX) - (c:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJKutf8.sty + (f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJKutf8.sty Package: CJKutf8 2021/10/16 4.8.5 - (c:/texlive/2024/texmf-dist/tex/generic/iftex/ifpdf.sty + (f:/texlive/2024/texmf-dist/tex/generic/iftex/ifpdf.sty Package: ifpdf 2019/10/25 v3.4 ifpdf legacy package. Use iftex instead. - (c:/texlive/2024/texmf-dist/tex/generic/iftex/iftex.sty + (f:/texlive/2024/texmf-dist/tex/generic/iftex/iftex.sty Package: iftex 2022/02/03 v1.0f TeX engine tests -)) (c:/texlive/2024/texmf-dist/tex/latex/base/inputenc.sty +)) (f:/texlive/2024/texmf-dist/tex/latex/base/inputenc.sty Package: inputenc 2021/02/14 v1.3d Input encoding file \inpenc@prehook=\toks17 \inpenc@posthook=\toks18 -) (c:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJK.sty +) (f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJK.sty Package: CJK 2021/10/16 4.8.5 - (c:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/mule/MULEenc.sty + (f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/mule/MULEenc.sty Package: MULEenc 2021/10/16 4.8.5 -) (c:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJK.enc +) (f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJK.enc File: CJK.enc 2021/10/16 4.8.5 Now handling font encoding C00 ... ... no UTF-8 mapping file for font encoding C00 @@ -136,9 +136,9 @@ Now handling font encoding C62 ... ... no UTF-8 mapping file for font encoding C62 ) \CJK@indent=\box53 -) (c:/texlive/2024/texmf-dist/tex/latex/base/fontenc.sty +) (f:/texlive/2024/texmf-dist/tex/latex/base/fontenc.sty Package: fontenc 2021/04/29 v2.0v Standard LaTeX package -)) (c:/texlive/2024/texmf-dist/tex/latex/cjkpunct/CJKpunct.sty +)) (f:/texlive/2024/texmf-dist/tex/latex/cjkpunct/CJKpunct.sty Package: CJKpunct 2016/05/14 4.8.4 \CJKpunct@cnta=\count266 \CJKpunct@cntb=\count267 @@ -151,99 +151,99 @@ Package: CJKpunct 2016/05/14 4.8.4 defining Unicode char U+201D (decimal 8221) defining Unicode char U+2014 (decimal 8212) defining Unicode char U+2026 (decimal 8230) - (c:/texlive/2024/texmf-dist/tex/latex/cjkpunct/CJKpunct.spa)) (c:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJKspace.sty + (f:/texlive/2024/texmf-dist/tex/latex/cjkpunct/CJKpunct.spa)) (f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJKspace.sty Package: CJKspace 2021/10/16 3.8.0 -) (c:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.bdg +) (f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.bdg File: UTF8.bdg 2021/10/16 4.8.5 -) (c:/texlive/2024/texmf-dist/tex/latex/ctex/ctexspa.def +) (f:/texlive/2024/texmf-dist/tex/latex/ctex/ctexspa.def File: ctexspa.def 2022/07/14 v2.5.10 Space info for CJKpunct (CTEX) ) \ccwd=\dimen142 \l__ctex_ccglue_skip=\skip50 ) \l__ctex_ziju_dim=\dimen143 - (c:/texlive/2024/texmf-dist/tex/latex/zhnumber/zhnumber.sty + (f:/texlive/2024/texmf-dist/tex/latex/zhnumber/zhnumber.sty Package: zhnumber 2022/07/14 v3.0 Typesetting numbers with Chinese glyphs \l__zhnum_scale_int=\count271 \l__zhnum_tmp_int=\count272 - (c:/texlive/2024/texmf-dist/tex/latex/zhnumber/zhnumber-utf8.cfg + (f:/texlive/2024/texmf-dist/tex/latex/zhnumber/zhnumber-utf8.cfg File: zhnumber-utf8.cfg 2022/07/14 v3.0 Chinese numerals with UTF8 encoding -)) (c:/texlive/2024/texmf-dist/tex/latex/ctex/scheme/ctex-scheme-chinese.def +)) (f:/texlive/2024/texmf-dist/tex/latex/ctex/scheme/ctex-scheme-chinese.def File: ctex-scheme-chinese.def 2022/07/14 v2.5.10 Chinese scheme for generic (CTEX) - (c:/texlive/2024/texmf-dist/tex/latex/ctex/config/ctex-name-utf8.cfg + (f:/texlive/2024/texmf-dist/tex/latex/ctex/config/ctex-name-utf8.cfg File: ctex-name-utf8.cfg 2022/07/14 v2.5.10 Caption with encoding UTF-8 (CTEX) -)) (c:/texlive/2024/texmf-dist/tex/latex/tools/indentfirst.sty +)) (f:/texlive/2024/texmf-dist/tex/latex/tools/indentfirst.sty Package: indentfirst 2023/07/02 v1.03 Indent first paragraph (DPC) -) (c:/texlive/2024/texmf-dist/tex/latex/ctex/fontset/ctex-fontset-windows.def +) (f:/texlive/2024/texmf-dist/tex/latex/ctex/fontset/ctex-fontset-windows.def File: ctex-fontset-windows.def 2022/07/14 v2.5.10 Windows fonts definition (CTEX) -)) (c:/texlive/2024/texmf-dist/tex/latex/ctex/config/ctex.cfg +)) (f:/texlive/2024/texmf-dist/tex/latex/ctex/config/ctex.cfg File: ctex.cfg 2022/07/14 v2.5.10 Configuration file (CTEX) -) (c:/texlive/2024/texmf-dist/tex/latex/graphics/graphicx.sty +) (f:/texlive/2024/texmf-dist/tex/latex/graphics/graphicx.sty Package: graphicx 2021/09/16 v1.2d Enhanced LaTeX Graphics (DPC,SPQR) - (c:/texlive/2024/texmf-dist/tex/latex/graphics/keyval.sty + (f:/texlive/2024/texmf-dist/tex/latex/graphics/keyval.sty Package: keyval 2022/05/29 v1.15 key=value parser (DPC) \KV@toks@=\toks19 -) (c:/texlive/2024/texmf-dist/tex/latex/graphics/graphics.sty +) (f:/texlive/2024/texmf-dist/tex/latex/graphics/graphics.sty Package: graphics 2022/03/10 v1.4e Standard LaTeX Graphics (DPC,SPQR) - (c:/texlive/2024/texmf-dist/tex/latex/graphics/trig.sty + (f:/texlive/2024/texmf-dist/tex/latex/graphics/trig.sty Package: trig 2021/08/11 v1.11 sin cos tan (DPC) -) (c:/texlive/2024/texmf-dist/tex/latex/graphics-cfg/graphics.cfg +) (f:/texlive/2024/texmf-dist/tex/latex/graphics-cfg/graphics.cfg File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration ) Package graphics Info: Driver file: pdftex.def on input line 107. - (c:/texlive/2024/texmf-dist/tex/latex/graphics-def/pdftex.def + (f:/texlive/2024/texmf-dist/tex/latex/graphics-def/pdftex.def File: pdftex.def 2022/09/22 v1.2b Graphics/color driver for pdftex )) \Gin@req@height=\dimen144 \Gin@req@width=\dimen145 -) (c:/texlive/2024/texmf-dist/tex/latex/hyperref/hyperref.sty +) (f:/texlive/2024/texmf-dist/tex/latex/hyperref/hyperref.sty Package: hyperref 2024-01-20 v7.01h Hypertext links for LaTeX - (c:/texlive/2024/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty + (f:/texlive/2024/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty Package: kvsetkeys 2022-10-05 v1.19 Key value parser (HO) -) (c:/texlive/2024/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +) (f:/texlive/2024/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO) -) (c:/texlive/2024/texmf-dist/tex/generic/pdfescape/pdfescape.sty +) (f:/texlive/2024/texmf-dist/tex/generic/pdfescape/pdfescape.sty Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) - (c:/texlive/2024/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty + (f:/texlive/2024/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty Package: ltxcmds 2023-12-04 v1.26 LaTeX kernel commands for general use (HO) -) (c:/texlive/2024/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +) (f:/texlive/2024/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty Package: pdftexcmds 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO) - (c:/texlive/2024/texmf-dist/tex/generic/infwarerr/infwarerr.sty + (f:/texlive/2024/texmf-dist/tex/generic/infwarerr/infwarerr.sty Package: infwarerr 2019/12/03 v1.5 Providing info/warning/error messages (HO) ) Package pdftexcmds Info: \pdf@primitive is available. Package pdftexcmds Info: \pdf@ifprimitive is available. Package pdftexcmds Info: \pdfdraftmode found. -)) (c:/texlive/2024/texmf-dist/tex/latex/hycolor/hycolor.sty +)) (f:/texlive/2024/texmf-dist/tex/latex/hycolor/hycolor.sty Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) -) (c:/texlive/2024/texmf-dist/tex/latex/auxhook/auxhook.sty +) (f:/texlive/2024/texmf-dist/tex/latex/auxhook/auxhook.sty Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO) -) (c:/texlive/2024/texmf-dist/tex/latex/hyperref/nameref.sty +) (f:/texlive/2024/texmf-dist/tex/latex/hyperref/nameref.sty Package: nameref 2023-11-26 v2.56 Cross-referencing by name of section - (c:/texlive/2024/texmf-dist/tex/latex/refcount/refcount.sty + (f:/texlive/2024/texmf-dist/tex/latex/refcount/refcount.sty Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO) -) (c:/texlive/2024/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +) (f:/texlive/2024/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO) - (c:/texlive/2024/texmf-dist/tex/latex/kvoptions/kvoptions.sty + (f:/texlive/2024/texmf-dist/tex/latex/kvoptions/kvoptions.sty Package: kvoptions 2022-06-15 v3.15 Key value format for package options (HO) )) \c@section@level=\count273 -) (c:/texlive/2024/texmf-dist/tex/latex/etoolbox/etoolbox.sty +) (f:/texlive/2024/texmf-dist/tex/latex/etoolbox/etoolbox.sty Package: etoolbox 2020/10/05 v2.5k e-TeX tools for LaTeX (JAW) \etb@tempcnta=\count274 ) \@linkdim=\dimen146 \Hy@linkcounter=\count275 \Hy@pagecounter=\count276 - (c:/texlive/2024/texmf-dist/tex/latex/hyperref/pd1enc.def + (f:/texlive/2024/texmf-dist/tex/latex/hyperref/pd1enc.def File: pd1enc.def 2024-01-20 v7.01h Hyperref: PDFDocEncoding definition (HO) Now handling font encoding PD1 ... ... no UTF-8 mapping file for font encoding PD1 -) (c:/texlive/2024/texmf-dist/tex/generic/intcalc/intcalc.sty +) (f:/texlive/2024/texmf-dist/tex/generic/intcalc/intcalc.sty Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO) ) \Hy@SavedSpaceFactor=\count277 - (c:/texlive/2024/texmf-dist/tex/latex/hyperref/puenc.def + (f:/texlive/2024/texmf-dist/tex/latex/hyperref/puenc.def File: puenc.def 2024-01-20 v7.01h Hyperref: PDF Unicode definition (HO) Now handling font encoding PU ... ... no UTF-8 mapping file for font encoding PU @@ -257,15 +257,15 @@ Package hyperref Info: Backreferencing OFF on input line 4199. Package hyperref Info: Implicit mode ON; LaTeX internals redefined. Package hyperref Info: Bookmarks ON on input line 4446. \c@Hy@tempcnt=\count278 - (c:/texlive/2024/texmf-dist/tex/latex/url/url.sty + (f:/texlive/2024/texmf-dist/tex/latex/url/url.sty \Urlmuskip=\muskip16 Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. ) LaTeX Info: Redefining \url on input line 4784. \XeTeXLinkMargin=\dimen147 - (c:/texlive/2024/texmf-dist/tex/generic/bitset/bitset.sty + (f:/texlive/2024/texmf-dist/tex/generic/bitset/bitset.sty Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO) - (c:/texlive/2024/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty + (f:/texlive/2024/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO) )) \Fld@menulength=\count279 @@ -278,7 +278,7 @@ Package hyperref Info: backreferencing OFF on input line 6078. Package hyperref Info: Link coloring OFF on input line 6083. Package hyperref Info: Link coloring with OCG OFF on input line 6088. Package hyperref Info: PDF/A mode OFF on input line 6093. - (c:/texlive/2024/texmf-dist/tex/latex/base/atbegshi-ltx.sty + (f:/texlive/2024/texmf-dist/tex/latex/base/atbegshi-ltx.sty Package: atbegshi-ltx 2021/01/10 v1.0c Emulation of the original atbegshi package with kernel methods ) @@ -287,23 +287,23 @@ package with kernel methods \c@Hfootnote=\count282 ) Package hyperref Info: Driver (autodetected): hpdftex. - (c:/texlive/2024/texmf-dist/tex/latex/hyperref/hpdftex.def + (f:/texlive/2024/texmf-dist/tex/latex/hyperref/hpdftex.def File: hpdftex.def 2024-01-20 v7.01h Hyperref driver for pdfTeX - (c:/texlive/2024/texmf-dist/tex/latex/base/atveryend-ltx.sty + (f:/texlive/2024/texmf-dist/tex/latex/base/atveryend-ltx.sty Package: atveryend-ltx 2020/08/19 v1.0a Emulation of the original atveryend package with kernel methods ) \Fld@listcount=\count283 \c@bookmark@seq@number=\count284 - (c:/texlive/2024/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty + (f:/texlive/2024/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty Package: rerunfilecheck 2022-07-10 v1.10 Rerun checks for auxiliary files (HO) - (c:/texlive/2024/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty + (f:/texlive/2024/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO) ) Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 285. ) \Hy@SectionHShift=\skip51 -) (c:/texlive/2024/texmf-dist/tex/latex/listings/listings.sty +) (f:/texlive/2024/texmf-dist/tex/latex/listings/listings.sty \lst@mode=\count285 \lst@gtempboxa=\box54 \lst@token=\toks20 @@ -316,26 +316,26 @@ Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 28 \lst@newlines=\count289 \lst@lineno=\count290 \lst@maxwidth=\dimen153 - (c:/texlive/2024/texmf-dist/tex/latex/listings/lstpatch.sty + (f:/texlive/2024/texmf-dist/tex/latex/listings/lstpatch.sty File: lstpatch.sty 2024/02/21 1.10 (Carsten Heinz) -) (c:/texlive/2024/texmf-dist/tex/latex/listings/lstmisc.sty +) (f:/texlive/2024/texmf-dist/tex/latex/listings/lstmisc.sty File: lstmisc.sty 2024/02/21 1.10 (Carsten Heinz) \c@lstnumber=\count291 \lst@skipnumbers=\count292 \lst@framebox=\box55 -) (c:/texlive/2024/texmf-dist/tex/latex/listings/listings.cfg +) (f:/texlive/2024/texmf-dist/tex/latex/listings/listings.cfg File: listings.cfg 2024/02/21 1.10 listings configuration )) Package: listings 2024/02/21 1.10 (Carsten Heinz) - (c:/texlive/2024/texmf-dist/tex/latex/graphics/color.sty + (f:/texlive/2024/texmf-dist/tex/latex/graphics/color.sty Package: color 2022/01/06 v1.3d Standard LaTeX Color (DPC) - (c:/texlive/2024/texmf-dist/tex/latex/graphics-cfg/color.cfg + (f:/texlive/2024/texmf-dist/tex/latex/graphics-cfg/color.cfg File: color.cfg 2016/01/02 v1.6 sample color configuration ) Package color Info: Driver file: pdftex.def on input line 149. - (c:/texlive/2024/texmf-dist/tex/latex/graphics/mathcolor.ltx)) (c:/texlive/2024/texmf-dist/tex/latex/geometry/geometry.sty + (f:/texlive/2024/texmf-dist/tex/latex/graphics/mathcolor.ltx)) (f:/texlive/2024/texmf-dist/tex/latex/geometry/geometry.sty Package: geometry 2020/01/02 v5.9 Page Geometry - (c:/texlive/2024/texmf-dist/tex/generic/iftex/ifvtex.sty + (f:/texlive/2024/texmf-dist/tex/generic/iftex/ifvtex.sty Package: ifvtex 2019/10/25 v1.7 ifvtex legacy package. Use iftex instead. ) \Gm@cnth=\count293 @@ -350,16 +350,16 @@ Package: ifvtex 2019/10/25 v1.7 ifvtex legacy package. Use iftex instead. \Gm@layouthoffset=\dimen160 \Gm@layoutvoffset=\dimen161 \Gm@dimlist=\toks21 -) (c:/texlive/2024/texmf-dist/tex/latex/setspace/setspace.sty +) (f:/texlive/2024/texmf-dist/tex/latex/setspace/setspace.sty Package: setspace 2022/12/04 v6.7b set line spacing -) (c:/texlive/2024/texmf-dist/tex/latex/float/float.sty +) (f:/texlive/2024/texmf-dist/tex/latex/float/float.sty Package: float 2001/11/08 v1.3d Float enhancements (AL) \c@float@type=\count296 \float@exts=\toks22 \float@box=\box56 \@float@everytoks=\toks23 \@floatcapt=\box57 -) (c:/texlive/2024/texmf-dist/tex/latex/tools/longtable.sty +) (f:/texlive/2024/texmf-dist/tex/latex/tools/longtable.sty Package: longtable 2023-11-01 v4.19 Multi-page Table package (DPC) \LTleft=\skip52 \LTright=\skip53 @@ -377,13 +377,13 @@ Package: longtable 2023-11-01 v4.19 Multi-page Table package (DPC) \c@LT@tables=\count300 \c@LT@chunks=\count301 \LT@p@ftn=\toks24 -) (c:/texlive/2024/texmf-dist/tex/latex/multirow/multirow.sty +) (f:/texlive/2024/texmf-dist/tex/latex/multirow/multirow.sty Package: multirow 2021/03/15 v2.8 Span multiple rows of a table \multirow@colwidth=\skip56 \multirow@cntb=\count302 \multirow@dima=\skip57 \bigstrutjot=\dimen163 -) (c:/texlive/2024/texmf-dist/tex/latex/tools/array.sty +) (f:/texlive/2024/texmf-dist/tex/latex/tools/array.sty Package: array 2023/10/16 v2.5g Tabular extension package (FMi) \col@sep=\dimen164 \ar@mcellbox=\box63 @@ -392,11 +392,11 @@ Package: array 2023/10/16 v2.5g Tabular extension package (FMi) \extratabsurround=\skip58 \backup@length=\skip59 \ar@cellbox=\box64 -) (c:/texlive/2024/texmf-dist/tex/latex/caption/subcaption.sty +) (f:/texlive/2024/texmf-dist/tex/latex/caption/subcaption.sty Package: subcaption 2023/07/28 v1.6b Sub-captions (AR) - (c:/texlive/2024/texmf-dist/tex/latex/caption/caption.sty + (f:/texlive/2024/texmf-dist/tex/latex/caption/caption.sty Package: caption 2023/08/05 v3.6o Customizing captions (AR) - (c:/texlive/2024/texmf-dist/tex/latex/caption/caption3.sty + (f:/texlive/2024/texmf-dist/tex/latex/caption/caption3.sty Package: caption3 2023/07/31 v2.4d caption3 kernel (AR) \caption@tempdima=\dimen166 \captionmargin=\dimen167 @@ -414,7 +414,7 @@ Package caption Info: float package is loaded. Package caption Info: hyperref package is loaded. Package caption Info: listings package is loaded. Package caption Info: longtable package is loaded. - (c:/texlive/2024/texmf-dist/tex/latex/caption/ltcaption.sty + (f:/texlive/2024/texmf-dist/tex/latex/caption/ltcaption.sty Package: ltcaption 2021/01/08 v1.4c longtable captions (AR) )) Package caption Info: New subtype `subfigure' on input line 238. @@ -423,9 +423,9 @@ Package caption Info: New subtype `subtable' on input line 238. \c@subtable=\count306 ) Package hyperref Info: Option `colorlinks' set `true' on input line 21. - (c:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.enc + (f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.enc File: UTF8.enc 2021/10/16 4.8.5 -) (c:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.chr +) (f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.chr File: UTF8.chr 2021/10/16 4.8.5 ) (./小米便签泛读、标注和维护报告文档.aux) \openout1 = `小米便签泛读、标注和维护报告文档.aux'. @@ -512,7 +512,7 @@ LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 56. LaTeX Font Info: ... okay on input line 56. LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 56. LaTeX Font Info: ... okay on input line 56. - (c:/texlive/2024/texmf-dist/tex/context/base/mkii/supp-pdf.mkii + (f:/texlive/2024/texmf-dist/tex/context/base/mkii/supp-pdf.mkii [Loading MPS to PDF converter (version 2006.09.02).] \scratchcounter=\count307 \scratchdimen=\dimen174 @@ -525,10 +525,10 @@ LaTeX Font Info: ... okay on input line 56. \MPnumerator=\count311 \makeMPintoPDFobject=\count312 \everyMPtoPDFconversion=\toks27 -) (c:/texlive/2024/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +) (f:/texlive/2024/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty Package: epstopdf-base 2020-01-24 v2.11 Base part for package epstopdf Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 485. - (c:/texlive/2024/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg + (f:/texlive/2024/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Live )) Package hyperref Info: Link coloring ON on input line 56. @@ -575,7 +575,7 @@ Package hyperref Info: Link coloring ON on input line 56. Package caption Info: Begin \AtBeginDocument code. Package caption Info: End \AtBeginDocument code. LaTeX Font Info: Trying to load font information for C70+rm on input line 59. -(c:/texlive/2024/texmf-dist/tex/latex/ctex/fd/c70rm.fd +(f:/texlive/2024/texmf-dist/tex/latex/ctex/fd/c70rm.fd File: c70rm.fd 2022/07/14 v2.5.10 Chinese font definition (CTEX) ) Package CJKpunct Info: use punctuation spaces for family 'rm' with punctstyle (quanjiao) on input line 59. @@ -583,9 +583,9 @@ LaTeX Font Info: External font `cmex10' loaded for size (Font) <14.4> on input line 59. LaTeX Font Info: External font `cmex10' loaded for size (Font) <7> on input line 59. - (c:/texlive/2024/texmf-dist/tex/generic/ctex/zhmap/ctex-zhmap-windows.tex + (f:/texlive/2024/texmf-dist/tex/generic/ctex/zhmap/ctex-zhmap-windows.tex File: ctex-zhmap-windows.tex 2022/07/14 v2.5.10 Windows font map loader for pdfTeX and DVIPDFMx (CTEX) -{c:/texlive/2024/texmf-var/fonts/map/pdftex/updmap/pdftex.map}{UGBK.sfd}{Unicode.sfd}) [1 +{f:/texlive/2024/texmf-var/fonts/map/pdftex/updmap/pdftex.map}{UGBK.sfd}{Unicode.sfd}) [1 ] (./小米便签泛读、标注和维护报告文档.toc LaTeX Font Info: External font `cmex10' loaded for size @@ -599,7 +599,7 @@ LaTeX Font Info: External font `cmex10' loaded for size \openout4 = `小米便签泛读、标注和维护报告文档.toc'. [3] - + File: picture/1.1.png Graphic file (type png) Package pdftex.def Info: picture/1.1.png used on input line 100. @@ -609,8 +609,8 @@ Underfull \hbox (badness 10000) in paragraph at lines 105--106 [] -[4 <./picture/1.1.png>] [5{c:/texlive/2024/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.enc}] - +[4 <./picture/1.1.png>] [5{f:/texlive/2024/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.enc}] + File: picture/2.png Graphic file (type png) Package pdftex.def Info: picture/2.png used on input line 182. @@ -620,13 +620,13 @@ Package pdftex.def Info: picture/2.png used on input line 182. LaTeX Warning: `!h' float specifier changed to `!ht'. [6] [7 <./picture/2.png>] - + File: picture/46.png Graphic file (type png) Package pdftex.def Info: picture/46.png used on input line 206. (pdftex.def) Requested size: 386.95897pt x 463.39175pt. [8] - + File: picture/4.png Graphic file (type png) Package pdftex.def Info: picture/4.png used on input line 218. @@ -637,12 +637,12 @@ Underfull \hbox (badness 10000) in paragraph at lines 213--220 [] [9 <./picture/46.png>] - + File: picture/7.png Graphic file (type png) Package pdftex.def Info: picture/7.png used on input line 226. (pdftex.def) Requested size: 386.95897pt x 152.53421pt. - + File: picture/8.png Graphic file (type png) Package pdftex.def Info: picture/8.png used on input line 234. @@ -653,7 +653,7 @@ Underfull \hbox (badness 10000) in paragraph at lines 229--236 [] [10 <./picture/4.png> <./picture/7.png>] - + File: picture/47.png Graphic file (type png) Package pdftex.def Info: picture/47.png used on input line 243. @@ -663,7 +663,7 @@ Underfull \hbox (badness 10000) in paragraph at lines 240--245 [] - + File: picture/9.png Graphic file (type png) Package pdftex.def Info: picture/9.png used on input line 253. @@ -679,7 +679,7 @@ Overfull \hbox (59.07744pt too wide) in paragraph at lines 261--262 [] [12 <./picture/9.png>] - + File: picture/48.png Graphic file (type png) Package pdftex.def Info: picture/48.png used on input line 272. @@ -780,7 +780,7 @@ Underfull \hbox (badness 10000) in paragraph at lines 471--472 [] [15] [16] [17] [18] [19] [20] - + File: picture/packet.png Graphic file (type png) Package pdftex.def Info: picture/packet.png used on input line 544. @@ -811,11 +811,6 @@ Underfull \hbox (badness 2221) in paragraph at lines 588--589 [] [22] -Underfull \hbox (badness 10000) in paragraph at lines 596--597 -[]\OT1/cmr/bx/n/12 IATActivity \C70/rm/m/n/12/54 \OT1/cmr/bx/n/12 Ifly-tekAc-tiv-ity\OT1/cmr/m/n/12 : \C70/rm/m/n/12/59 ^^D \C70/rm/m/n/12/74 ^^F \C70/rm/m/n/12/8b \C70/rm/m/n/12/97 \C70/rm/m/n/12/8f \C70/rm/m/n/12/51 e \C70/rm/m/n/12/52 \C70/rm/m/n/12/80 |\C70/rm/m/n/12/ff ^^L| \C70/rm/m/n/12/90 ^^Z \C70/rm/m/n/12/8f \C70/rm/m/n/12/5b W \C70/rm/m/n/12/6b \OT1/cmtt/m/n/12 mIat: - [] - - Overfull \hbox (4.08617pt too wide) in paragraph at lines 597--598 []\OT1/cmr/bx/n/12 TtsDemo \C70/rm/m/n/12/54 \OT1/cmr/bx/n/12 Tts-Set-tings\OT1/cmr/m/n/12 : \C70/rm/m/n/12/63 \C70/rm/m/n/12/4f \C70/rm/m/n/12/8b \C70/rm/m/n/12/97 \C70/rm/m/n/12/54 ^^H \C70/rm/m/n/12/62 ^^P \C70/rm/m/n/12/52 \C70/rm/m/n/12/80 |\C70/rm/m/n/12/ff ^^L| \C70/rm/m/n/12/51 v \C70/rm/m/n/12/68 8 \C70/rm/m/n/12/5f \C70/rm/m/n/12/65 \C70/rm/m/n/12/6c \OT1/cmtt/m/n/12 initSpeechSynthesizer() [] @@ -831,7 +826,7 @@ Underfull \hbox (badness 2119) in paragraph at lines 610--611 [] [23] [24] - + File: picture/Structure Package.png Graphic file (type png) Package pdftex.def Info: picture/Structure Package.png used on input line 621. @@ -842,438 +837,438 @@ Underfull \hbox (badness 1348) in paragraph at lines 661--662 [] [26] [27] [28] - + File: picture/113.png Graphic file (type png) Package pdftex.def Info: picture/113.png used on input line 743. (pdftex.def) Requested size: 386.95897pt x 585.07259pt. [29 <./picture/113.png>] - + File: picture/112.png Graphic file (type png) Package pdftex.def Info: picture/112.png used on input line 750. (pdftex.def) Requested size: 386.95897pt x 585.07259pt. [30 <./picture/112.png>] - + File: picture/xml-1.png Graphic file (type png) Package pdftex.def Info: picture/xml-1.png used on input line 770. (pdftex.def) Requested size: 386.95897pt x 125.13577pt. - + File: picture/java-1.png Graphic file (type png) Package pdftex.def Info: picture/java-1.png used on input line 775. (pdftex.def) Requested size: 386.95897pt x 144.62877pt. - + File: picture/xml-2.png Graphic file (type png) Package pdftex.def Info: picture/xml-2.png used on input line 781. (pdftex.def) Requested size: 386.95897pt x 139.80946pt. - + File: picture/java-2.png Graphic file (type png) Package pdftex.def Info: picture/java-2.png used on input line 786. (pdftex.def) Requested size: 386.95897pt x 103.05075pt. [31 <./picture/xml-1.png> <./picture/java-1.png> <./picture/xml-2.png>] - + File: picture/Data bar Chart -java.png Graphic file (type png) Package pdftex.def Info: picture/Data bar Chart -java.png used on input line 793. (pdftex.def) Requested size: 386.95897pt x 191.69075pt. - + File: picture/Data bar Chart -xml.png Graphic file (type png) Package pdftex.def Info: picture/Data bar Chart -xml.png used on input line 798. (pdftex.def) Requested size: 386.95897pt x 191.69075pt. - + File: picture/Data pie Chart -java.png Graphic file (type png) Package pdftex.def Info: picture/Data pie Chart -java.png used on input line 803. (pdftex.def) Requested size: 483.69687pt x 262.2212pt. - + File: picture/Data pie Chart -xml.png Graphic file (type png) Package pdftex.def Info: picture/Data pie Chart -xml.png used on input line 808. (pdftex.def) Requested size: 483.69687pt x 267.55008pt. [32 <./picture/java-2.png> <./picture/Data bar Chart -java.png> <./picture/Data bar Chart -xml.png>] [33 <./picture/Data pie Chart -java.png> <./picture/Data pie Chart -xml.png>] - + File: picture/Merge data bar chart.png Graphic file (type png) Package pdftex.def Info: picture/Merge data bar chart.png used on input line 816. (pdftex.def) Requested size: 483.69687pt x 239.67928pt. - + File: picture/Merge data pie charts.png Graphic file (type png) Package pdftex.def Info: picture/Merge data pie charts.png used on input line 821. (pdftex.def) Requested size: 483.69687pt x 245.57713pt. - [34 <./picture/Merge data bar chart.png> <./picture/Merge data pie charts.png>] - + [34 <./picture/Merge data bar chart.png> <./picture/Merge data pie charts.png>] [35] + File: picture/CodeArts-lastest-1.png Graphic file (type png) -Package pdftex.def Info: picture/CodeArts-lastest-1.png used on input line 832. +Package pdftex.def Info: picture/CodeArts-lastest-1.png used on input line 877. (pdftex.def) Requested size: 483.69687pt x 521.12582pt. - + File: picture/CodeArts-master.png Graphic file (type png) -Package pdftex.def Info: picture/CodeArts-master.png used on input line 839. +Package pdftex.def Info: picture/CodeArts-master.png used on input line 884. (pdftex.def) Requested size: 386.95897pt x 185.84177pt. - [35 <./picture/CodeArts-lastest-1.png>] -Underfull \hbox (badness 10000) in paragraph at lines 907--908 + [36 <./picture/CodeArts-lastest-1.png>] +Underfull \hbox (badness 10000) in paragraph at lines 952--953 []|\C70/rm/m/n/10/65 \C70/rm/m/n/10/6c \C70/rm/m/n/10/76 \OT1/cmr/m/n/10 Javadoc\C70/rm/m/n/10/4e - \C70/rm/m/n/10/5e \C70/rm/m/n/10/8b \C70/rm/m/n/10/53 ^^E \C70/rm/m/n/10/54 + \C70/rm/m/n/10/52 \C70/rm/m/n/10/80 \C70/rm/m/n/10/8b \C70/rm/m/n/10/66 ^^N|\C70/rm/m/n/10/ff ^^L| \C70/rm/m/n/10/68 9 \C70/rm/m/n/10/63 n \C70/rm/m/n/10/5b \C70/rm/m/n/10/96 E \C70/rm/m/n/10/97 ^^@ \C70/rm/m/n/10/89 \C70/rm/m/n/10/63 \C70/rm/m/n/10/98 z \C70/rm/m/n/10/5e \C70/rm/m/n/10/4f ^^? [] -Underfull \hbox (badness 2644) in paragraph at lines 907--908 +Underfull \hbox (badness 2644) in paragraph at lines 952--953 \C70/rm/m/n/10/75 (\OT1/cmr/m/n/10 @param|\C70/rm/m/n/10/30 ^^A| \OT1/cmr/m/n/10 @return|\C70/rm/m/n/10/30 ^^A| \OT1/cmr/m/n/10 @throws\C70/rm/m/n/10/68 ^^G \C70/rm/m/n/10/7b ~ \C70/rm/m/n/10/5b \C70/rm/m/n/10/53 \C70/rm/m/n/10/65 p|\C70/rm/m/n/10/30 ^^A| \C70/rm/m/n/10/8f \C70/rm/m/n/10/56 \C70/rm/m/n/10/50 <|\C70/rm/m/n/10/30 ^^A| \C70/rm/m/n/10/5f ^^B \C70/rm/m/n/10/5e 8 \C70/rm/m/n/10/8f \C70/rm/m/n/10/88 L \C70/rm/m/n/10/6c [] -Underfull \hbox (badness 10000) in paragraph at lines 920--921 +Underfull \hbox (badness 10000) in paragraph at lines 965--966 []|\C70/rm/m/n/10/4e ^^M \C70/rm/m/n/10/89 \C70/rm/m/n/10/76 \C70/rm/m/n/10/63 U \C70/rm/m/n/10/83 \C70/rm/m/n/10/53 \C70/rm/m/n/10/90 ^^Z \C70/rm/m/n/10/8f \C70/rm/m/n/10/98 \C70/rm/m/n/10/68 \C70/rm/m/n/10/67 \C70/rm/m/n/10/8f \C70/rm/m/n/10/88 L \C70/rm/m/n/10/59 ^^D \C70/rm/m/n/10/74 ^^F \C70/rm/m/n/10/76 \OT1/cmr/m/n/10 RuntimeException|\C70/rm/m/n/10/ff ^^L| [] -Underfull \hbox (badness 10000) in paragraph at lines 944--945 +Underfull \hbox (badness 10000) in paragraph at lines 989--990 []|\C70/rm/m/n/10/65 \C70/rm/m/n/10/6c \C70/rm/m/n/10/76 \OT1/cmr/m/n/10 Javadoc\C70/rm/m/n/10/4e - \C70/rm/m/n/10/5e \C70/rm/m/n/10/8b \C70/rm/m/n/10/53 ^^E \C70/rm/m/n/10/54 + \C70/rm/m/n/10/52 \C70/rm/m/n/10/80 \C70/rm/m/n/10/8b \C70/rm/m/n/10/66 ^^N|\C70/rm/m/n/10/ff ^^L| \C70/rm/m/n/10/68 9 \C70/rm/m/n/10/63 n \C70/rm/m/n/10/5b \C70/rm/m/n/10/96 E \C70/rm/m/n/10/97 ^^@ \C70/rm/m/n/10/89 \C70/rm/m/n/10/63 \C70/rm/m/n/10/98 z \C70/rm/m/n/10/5e \C70/rm/m/n/10/4f ^^? [] -Underfull \hbox (badness 2644) in paragraph at lines 944--945 +Underfull \hbox (badness 2644) in paragraph at lines 989--990 \C70/rm/m/n/10/75 (\OT1/cmr/m/n/10 @param|\C70/rm/m/n/10/30 ^^A| \OT1/cmr/m/n/10 @return|\C70/rm/m/n/10/30 ^^A| \OT1/cmr/m/n/10 @throws\C70/rm/m/n/10/68 ^^G \C70/rm/m/n/10/7b ~ \C70/rm/m/n/10/5b \C70/rm/m/n/10/53 \C70/rm/m/n/10/65 p|\C70/rm/m/n/10/30 ^^A| \C70/rm/m/n/10/8f \C70/rm/m/n/10/56 \C70/rm/m/n/10/50 <|\C70/rm/m/n/10/30 ^^A| \C70/rm/m/n/10/5f ^^B \C70/rm/m/n/10/5e 8 \C70/rm/m/n/10/8f \C70/rm/m/n/10/88 L \C70/rm/m/n/10/6c [] -[36 <./picture/CodeArts-master.png>] [37] [38] - +[37 <./picture/CodeArts-master.png>] [38] [39] + File: picture/12.png Graphic file (type png) -Package pdftex.def Info: picture/12.png used on input line 979. +Package pdftex.def Info: picture/12.png used on input line 1024. (pdftex.def) Requested size: 145.11053pt x 260.343pt. - + File: picture/13.png Graphic file (type png) -Package pdftex.def Info: picture/13.png used on input line 984. +Package pdftex.def Info: picture/13.png used on input line 1029. (pdftex.def) Requested size: 145.11053pt x 259.86879pt. - + File: picture/14.png Graphic file (type png) -Package pdftex.def Info: picture/14.png used on input line 990. +Package pdftex.def Info: picture/14.png used on input line 1035. (pdftex.def) Requested size: 120.92421pt x 209.61205pt. - [39 <./picture/12.png> <./picture/13.png> <./picture/14.png>] - + [40 <./picture/12.png> <./picture/13.png> <./picture/14.png>] + File: picture/15.png Graphic file (type png) -Package pdftex.def Info: picture/15.png used on input line 1003. +Package pdftex.def Info: picture/15.png used on input line 1048. (pdftex.def) Requested size: 338.58632pt x 586.26172pt. - [40 <./picture/15.png>] - + [41 <./picture/15.png>] + File: picture/16.png Graphic file (type png) -Package pdftex.def Info: picture/16.png used on input line 1016. +Package pdftex.def Info: picture/16.png used on input line 1061. (pdftex.def) Requested size: 217.66211pt x 385.4475pt. - + File: picture/17.png Graphic file (type png) -Package pdftex.def Info: picture/17.png used on input line 1021. +Package pdftex.def Info: picture/17.png used on input line 1066. (pdftex.def) Requested size: 217.66211pt x 364.84047pt. - [41 <./picture/16.png> <./picture/17.png>] - + [42 <./picture/16.png> <./picture/17.png>] + File: picture/18.png Graphic file (type png) -Package pdftex.def Info: picture/18.png used on input line 1032. +Package pdftex.def Info: picture/18.png used on input line 1077. (pdftex.def) Requested size: 338.58632pt x 585.83261pt. - [42 <./picture/18.png>] - + [43 <./picture/18.png>] + File: picture/19.png Graphic file (type png) -Package pdftex.def Info: picture/19.png used on input line 1040. +Package pdftex.def Info: picture/19.png used on input line 1085. (pdftex.def) Requested size: 338.58632pt x 590.6606pt. - [43 <./picture/19.png>] - + [44 <./picture/19.png>] + File: picture/20.png Graphic file (type png) -Package pdftex.def Info: picture/20.png used on input line 1048. +Package pdftex.def Info: picture/20.png used on input line 1093. (pdftex.def) Requested size: 338.58632pt x 424.05025pt. - [44 <./picture/20.png>] - + [45 <./picture/20.png>] + File: picture/21.png Graphic file (type png) -Package pdftex.def Info: picture/21.png used on input line 1058. +Package pdftex.def Info: picture/21.png used on input line 1103. (pdftex.def) Requested size: 217.66211pt x 334.31305pt. - + File: picture/22.png Graphic file (type png) -Package pdftex.def Info: picture/22.png used on input line 1063. +Package pdftex.def Info: picture/22.png used on input line 1108. (pdftex.def) Requested size: 217.66211pt x 331.86385pt. - [45 <./picture/21.png> <./picture/22.png>] - + [46 <./picture/21.png> <./picture/22.png>] + File: picture/seq3_Login.png Graphic file (type png) -Package pdftex.def Info: picture/seq3_Login.png used on input line 1072. +Package pdftex.def Info: picture/seq3_Login.png used on input line 1117. (pdftex.def) Requested size: 445.00023pt x 696.43372pt. - [46 <./picture/seq3_Login.png (PNG copy)>] - + [47 <./picture/seq3_Login.png (PNG copy)>] + File: picture/23.png Graphic file (type png) -Package pdftex.def Info: picture/23.png used on input line 1087. +Package pdftex.def Info: picture/23.png used on input line 1132. (pdftex.def) Requested size: 217.66211pt x 348.25456pt. - + File: picture/24.png Graphic file (type png) -Package pdftex.def Info: picture/24.png used on input line 1092. +Package pdftex.def Info: picture/24.png used on input line 1137. (pdftex.def) Requested size: 217.66211pt x 325.92534pt. - [47 <./picture/23.png> <./picture/24.png>] - + [48 <./picture/23.png> <./picture/24.png>] + File: picture/25.png Graphic file (type png) -Package pdftex.def Info: picture/25.png used on input line 1104. +Package pdftex.def Info: picture/25.png used on input line 1149. (pdftex.def) Requested size: 217.66211pt x 395.35236pt. - + File: picture/26.png Graphic file (type png) -Package pdftex.def Info: picture/26.png used on input line 1109. +Package pdftex.def Info: picture/26.png used on input line 1154. (pdftex.def) Requested size: 217.66211pt x 367.4363pt. - [48 <./picture/25.png> <./picture/26.png>] - + [49 <./picture/25.png> <./picture/26.png>] + File: picture/27.png Graphic file (type png) -Package pdftex.def Info: picture/27.png used on input line 1121. +Package pdftex.def Info: picture/27.png used on input line 1166. (pdftex.def) Requested size: 217.66211pt x 390.44012pt. - + File: picture/28.png Graphic file (type png) -Package pdftex.def Info: picture/28.png used on input line 1126. +Package pdftex.def Info: picture/28.png used on input line 1171. (pdftex.def) Requested size: 217.66211pt x 351.92612pt. - [49 <./picture/27.png> <./picture/28.png>] - + [50 <./picture/27.png> <./picture/28.png>] + File: picture/seq4_Translate.png Graphic file (type png) -Package pdftex.def Info: picture/seq4_Translate.png used on input line 1135. +Package pdftex.def Info: picture/seq4_Translate.png used on input line 1180. (pdftex.def) Requested size: 483.69687pt x 468.38179pt. - [50 <./picture/seq4_Translate.png (PNG copy)>] - + [51 <./picture/seq4_Translate.png (PNG copy)>] + File: picture/29.png Graphic file (type png) -Package pdftex.def Info: picture/29.png used on input line 1147. +Package pdftex.def Info: picture/29.png used on input line 1192. (pdftex.def) Requested size: 338.58632pt x 530.07355pt. - [51 <./picture/29.png>] - + [52 <./picture/29.png>] + File: picture/30.png Graphic file (type png) -Package pdftex.def Info: picture/30.png used on input line 1157. +Package pdftex.def Info: picture/30.png used on input line 1202. (pdftex.def) Requested size: 338.58632pt x 527.77861pt. - [52 <./picture/30.png>] - + [53 <./picture/30.png>] + File: picture/31.png Graphic file (type png) -Package pdftex.def Info: picture/31.png used on input line 1169. +Package pdftex.def Info: picture/31.png used on input line 1214. (pdftex.def) Requested size: 338.58632pt x 146.31781pt. - + File: picture/32.png Graphic file (type png) -Package pdftex.def Info: picture/32.png used on input line 1174. +Package pdftex.def Info: picture/32.png used on input line 1219. (pdftex.def) Requested size: 338.58632pt x 145.26376pt. - + File: picture/33.png Graphic file (type png) -Package pdftex.def Info: picture/33.png used on input line 1179. +Package pdftex.def Info: picture/33.png used on input line 1224. (pdftex.def) Requested size: 338.58632pt x 137.14647pt. - + File: picture/34.png Graphic file (type png) -Package pdftex.def Info: picture/34.png used on input line 1184. +Package pdftex.def Info: picture/34.png used on input line 1229. (pdftex.def) Requested size: 338.58632pt x 142.0762pt. - + File: picture/35.png Graphic file (type png) -Package pdftex.def Info: picture/35.png used on input line 1189. +Package pdftex.def Info: picture/35.png used on input line 1234. (pdftex.def) Requested size: 338.58632pt x 143.64706pt. - [53 <./picture/31.png> <./picture/32.png> <./picture/33.png>] [54 <./picture/34.png> <./picture/35.png>] - + [54 <./picture/31.png> <./picture/32.png> <./picture/33.png>] [55 <./picture/34.png> <./picture/35.png>] + File: picture/36.png Graphic file (type png) -Package pdftex.def Info: picture/36.png used on input line 1199. +Package pdftex.def Info: picture/36.png used on input line 1244. (pdftex.def) Requested size: 338.58632pt x 266.26366pt. - [55 <./picture/36.png>] - + [56 <./picture/36.png>] + File: picture/37.png Graphic file (type png) -Package pdftex.def Info: picture/37.png used on input line 1213. +Package pdftex.def Info: picture/37.png used on input line 1258. (pdftex.def) Requested size: 217.66211pt x 378.58864pt. - + File: picture/38.png Graphic file (type png) -Package pdftex.def Info: picture/38.png used on input line 1218. +Package pdftex.def Info: picture/38.png used on input line 1263. (pdftex.def) Requested size: 217.66211pt x 364.23763pt. - [56 <./picture/37.png> <./picture/38.png>] - + [57 <./picture/37.png> <./picture/38.png>] + File: picture/39.png Graphic file (type png) -Package pdftex.def Info: picture/39.png used on input line 1229. +Package pdftex.def Info: picture/39.png used on input line 1274. (pdftex.def) Requested size: 217.66211pt x 380.63171pt. - + File: picture/40.png Graphic file (type png) -Package pdftex.def Info: picture/40.png used on input line 1234. +Package pdftex.def Info: picture/40.png used on input line 1279. (pdftex.def) Requested size: 217.66211pt x 360.02026pt. - [57 <./picture/39.png> <./picture/40.png>] - + [58 <./picture/39.png> <./picture/40.png>] + File: picture/41.png Graphic file (type png) -Package pdftex.def Info: picture/41.png used on input line 1255. +Package pdftex.def Info: picture/41.png used on input line 1300. (pdftex.def) Requested size: 217.66211pt x 355.24034pt. - + File: picture/42.png Graphic file (type png) -Package pdftex.def Info: picture/42.png used on input line 1260. +Package pdftex.def Info: picture/42.png used on input line 1305. (pdftex.def) Requested size: 217.66211pt x 359.7431pt. File: picture/41.png Graphic file (type png) -Package pdftex.def Info: picture/41.png used on input line 1269. +Package pdftex.def Info: picture/41.png used on input line 1314. (pdftex.def) Requested size: 217.66211pt x 355.24034pt. File: picture/42.png Graphic file (type png) -Package pdftex.def Info: picture/42.png used on input line 1274. +Package pdftex.def Info: picture/42.png used on input line 1319. (pdftex.def) Requested size: 217.66211pt x 359.7431pt. - [58 <./picture/41.png> <./picture/42.png>] [59] - + [59 <./picture/41.png> <./picture/42.png>] [60] + File: picture/Template tag 1.png Graphic file (type png) -Package pdftex.def Info: picture/Template tag 1.png used on input line 1287. +Package pdftex.def Info: picture/Template tag 1.png used on input line 1332. (pdftex.def) Requested size: 213.31125pt x 322.50383pt. - + File: picture/Template tag 2.png Graphic file (type png) -Package pdftex.def Info: picture/Template tag 2.png used on input line 1294. +Package pdftex.def Info: picture/Template tag 2.png used on input line 1339. (pdftex.def) Requested size: 213.31125pt x 322.50383pt. - + File: picture/111.png Graphic file (type png) -Package pdftex.def Info: picture/111.png used on input line 1302. +Package pdftex.def Info: picture/111.png used on input line 1347. (pdftex.def) Requested size: 386.95897pt x 585.07259pt. - [60 <./picture/Template tag 1.png> <./picture/Template tag 2.png>] - + [61 <./picture/Template tag 1.png> <./picture/Template tag 2.png>] + File: picture/114.png Graphic file (type png) -Package pdftex.def Info: picture/114.png used on input line 1308. +Package pdftex.def Info: picture/114.png used on input line 1353. (pdftex.def) Requested size: 386.95897pt x 585.07259pt. - [61 <./picture/111.png>] [62 <./picture/114.png>] - + [62 <./picture/111.png>] [63 <./picture/114.png>] + File: picture/linsten1.png Graphic file (type png) -Package pdftex.def Info: picture/linsten1.png used on input line 1329. +Package pdftex.def Info: picture/linsten1.png used on input line 1374. (pdftex.def) Requested size: 213.31125pt x 322.2063pt. - + File: picture/linsten2.png Graphic file (type png) -Package pdftex.def Info: picture/linsten2.png used on input line 1336. +Package pdftex.def Info: picture/linsten2.png used on input line 1381. (pdftex.def) Requested size: 213.31125pt x 322.2063pt. - [63 <./picture/linsten1.png> <./picture/linsten2.png>] - + [64 <./picture/linsten1.png> <./picture/linsten2.png>] + File: picture/seq12_Iat.png Graphic file (type png) -Package pdftex.def Info: picture/seq12_Iat.png used on input line 1357. +Package pdftex.def Info: picture/seq12_Iat.png used on input line 1402. (pdftex.def) Requested size: 483.69687pt x 533.81516pt. - [64 <./picture/seq12_Iat.png (PNG copy)>] - + [65 <./picture/seq12_Iat.png (PNG copy)>] + File: picture/Speech synthesis diagram 1.png Graphic file (type png) -Package pdftex.def Info: picture/Speech synthesis diagram 1.png used on input line 1370. +Package pdftex.def Info: picture/Speech synthesis diagram 1.png used on input line 1415. (pdftex.def) Requested size: 338.58632pt x 511.45793pt. - + File: picture/Speech synthesis diagram 2.png Graphic file (type png) -Package pdftex.def Info: picture/Speech synthesis diagram 2.png used on input line 1379. +Package pdftex.def Info: picture/Speech synthesis diagram 2.png used on input line 1424. (pdftex.def) Requested size: 213.31125pt x 322.2063pt. - + File: picture/Speech synthesis diagram 3.png Graphic file (type png) -Package pdftex.def Info: picture/Speech synthesis diagram 3.png used on input line 1386. +Package pdftex.def Info: picture/Speech synthesis diagram 3.png used on input line 1431. (pdftex.def) Requested size: 213.31125pt x 322.2063pt. - [65 <./picture/Speech synthesis diagram 1.png>] [66 <./picture/Speech synthesis diagram 2.png> <./picture/Speech synthesis diagram 3.png>] - + [66 <./picture/Speech synthesis diagram 1.png>] [67 <./picture/Speech synthesis diagram 2.png> <./picture/Speech synthesis diagram 3.png>] + File: picture/seq13_Tts.png Graphic file (type png) -Package pdftex.def Info: picture/seq13_Tts.png used on input line 1395. +Package pdftex.def Info: picture/seq13_Tts.png used on input line 1440. (pdftex.def) Requested size: 435.32422pt x 730.12323pt. Overfull \vbox (23.38737pt too high) has occurred while \output is active [] - [67 <./picture/seq13_Tts.png (PNG copy)>] - + [68 <./picture/seq13_Tts.png (PNG copy)>] + File: picture/Dialogue-based large models.png Graphic file (type png) -Package pdftex.def Info: picture/Dialogue-based large models.png used on input line 1406. +Package pdftex.def Info: picture/Dialogue-based large models.png used on input line 1451. (pdftex.def) Requested size: 338.58632pt x 511.45793pt. - [68 <./picture/Dialogue-based large models.png>] - + [69 <./picture/Dialogue-based large models.png>] + File: picture/seq14-LL.png Graphic file (type png) -Package pdftex.def Info: picture/seq14-LL.png used on input line 1414. +Package pdftex.def Info: picture/seq14-LL.png used on input line 1459. (pdftex.def) Requested size: 532.0695pt x 379.27733pt. -Overfull \hbox (48.37263pt too wide) in paragraph at lines 1414--1415 +Overfull \hbox (48.37263pt too wide) in paragraph at lines 1459--1460 [][] [] -[69 <./picture/seq14-LL.png>] - +[70 <./picture/seq14-LL.png>] + File: picture/seq14_chatLLM.png Graphic file (type png) -Package pdftex.def Info: picture/seq14_chatLLM.png used on input line 1420. +Package pdftex.def Info: picture/seq14_chatLLM.png used on input line 1465. (pdftex.def) Requested size: 483.69687pt x 537.9138pt. - [70 <./picture/seq14_chatLLM.png>] -Underfull \hbox (badness 10000) in paragraph at lines 1441--1441 + [71 <./picture/seq14_chatLLM.png>] +Underfull \hbox (badness 10000) in paragraph at lines 1486--1486 []|\C70/rm/m/n/12/63 [] -Overfull \hbox (6.1584pt too wide) in paragraph at lines 1443--1443 +Overfull \hbox (6.1584pt too wide) in paragraph at lines 1488--1488 []|\C70/rm/m/n/12/7c {\OT1/cmr/m/n/12 SpeechRecognizer| [] -Overfull \hbox (8.67365pt too wide) in paragraph at lines 1445--1445 +Overfull \hbox (8.67365pt too wide) in paragraph at lines 1490--1490 []|\C70/rm/m/n/12/7c {\OT1/cmr/m/n/12 SpeechSynthesizer| [] -[71] - +[72] + File: picture/Undo function1.png Graphic file (type png) -Package pdftex.def Info: picture/Undo function1.png used on input line 1457. +Package pdftex.def Info: picture/Undo function1.png used on input line 1502. (pdftex.def) Requested size: 338.58632pt x 511.45793pt. - [72 <./picture/Undo function1.png>] - + [73 <./picture/Undo function1.png>] + File: picture/Obtain the geographical location schematic diagram 1.png Graphic file (type png) -Package pdftex.def Info: picture/Obtain the geographical location schematic diagram 1.png used on input line 1477. +Package pdftex.def Info: picture/Obtain the geographical location schematic diagram 1.png used on input line 1522. (pdftex.def) Requested size: 213.31125pt x 334.9755pt. - + File: picture/Obtain the geographical location schematic diagram 2.png Graphic file (type png) -Package pdftex.def Info: picture/Obtain the geographical location schematic diagram 2.png used on input line 1484. +Package pdftex.def Info: picture/Obtain the geographical location schematic diagram 2.png used on input line 1529. (pdftex.def) Requested size: 213.31125pt x 322.50383pt. - [73 <./picture/Obtain the geographical location schematic diagram 1.png> <./picture/Obtain the geographical location schematic diagram 2.png>] [74] [75] (./小米便签泛读、标注和维护报告文档.aux) + [74 <./picture/Obtain the geographical location schematic diagram 1.png> <./picture/Obtain the geographical location schematic diagram 2.png>] [75] [76] (./小米便签泛读、标注和维护报告文档.aux) *********** LaTeX2e <2023-11-01> patch level 1 L3 programming layer <2022/07/14> *********** Package rerunfilecheck Info: File `小米便签泛读、标注和维护报告文档.out' has not changed. -(rerunfilecheck) Checksum: E4818546AC43AD5D03ED8C9FBB8E55F0;4755. +(rerunfilecheck) Checksum: A3391B03F8D4BB0A0AFC05053738784C;4879. ) Here is how much of TeX's memory you used: - 18272 strings out of 476065 - 312868 string characters out of 5792786 + 18279 strings out of 474116 + 313049 string characters out of 5747718 2032190 words of memory out of 5000000 - 39431 multiletter control sequences out of 15000+600000 + 39685 multiletter control sequences out of 15000+600000 652670 words of font info for 381 fonts, out of 8000000 for 9000 - 14 hyphenation exceptions out of 8191 - 80i,9n,83p,809b,653s stack positions out of 10000i,1000n,20000p,200000b,200000s - -Output written on 小米便签泛读、标注和维护报告文档.pdf (75 pages, 12843578 bytes). + 1141 hyphenation exceptions out of 8191 + 80i,9n,83p,842b,653s stack positions out of 10000i,1000n,20000p,200000b,200000s + +Output written on 小米便签泛读、标注和维护报告文档.pdf (76 pages, 12846818 bytes). PDF statistics: - 1500 PDF objects out of 1728 (max. 8388607) - 1083 compressed objects within 11 object streams - 259 named destinations out of 1000 (max. 500000) - 1020 words of extra memory for PDF output out of 10000 (max. 10000000) + 1510 PDF objects out of 1728 (max. 8388607) + 1092 compressed objects within 11 object streams + 262 named destinations out of 1000 (max. 500000) + 1028 words of extra memory for PDF output out of 10000 (max. 10000000) diff --git a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.out b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.out index 45ae3f2..c6c4180 100644 --- a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.out +++ b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.out @@ -13,29 +13,30 @@ \BOOKMARK [3][-]{subsubsection.3.2.3}{\376\377\165\114\227\142\213\276\213\241}{subsection.3.2}% 13 \BOOKMARK [2][-]{subsection.3.3}{\376\377\176\364\142\244\116\343\170\001\145\160\221\317\116\345\123\312\215\050\221\317\140\305\121\265}{section.3}% 14 \BOOKMARK [3][-]{subsubsection.3.3.1}{\376\377\176\364\142\244\116\343\170\001\145\160\221\317}{subsection.3.3}% 15 -\BOOKMARK [3][-]{subsubsection.3.3.2}{\376\377\176\364\142\244\124\016\166\204\215\050\221\317\122\006\147\220}{subsection.3.3}% 16 -\BOOKMARK [2][-]{subsection.3.4}{\376\377\176\364\142\244\124\016\166\204\217\157\116\366\123\237\127\213\116\345\123\312\122\237\200\375\134\125\171\072}{section.3}% 17 -\BOOKMARK [3][-]{subsubsection.3.4.1}{\376\377\213\276\177\156\165\114\227\142\200\314\146\157}{subsection.3.4}% 18 -\BOOKMARK [3][-]{subsubsection.3.4.2}{\376\377\153\042\217\316\165\114\227\142}{subsection.3.4}% 19 -\BOOKMARK [3][-]{subsubsection.3.4.3}{\376\377\166\173\137\125\133\306\170\001}{subsection.3.4}% 20 -\BOOKMARK [3][-]{subsubsection.3.4.4}{\376\377\177\373\213\321\122\237\200\375}{subsection.3.4}% 21 -\BOOKMARK [3][-]{subsubsection.3.4.5}{\376\377\143\322\121\145\126\376\162\107}{subsection.3.4}% 22 -\BOOKMARK [3][-]{subsubsection.3.4.6}{\376\377\176\337\213\241\133\127\173\046\116\052\145\160}{subsection.3.4}% 23 -\BOOKMARK [3][-]{subsubsection.3.4.7}{\376\377\133\314\145\207\147\054\122\237\200\375}{subsection.3.4}% 24 -\BOOKMARK [3][-]{subsubsection.3.4.8}{\376\377\147\027\213\373\122\237\200\375}{subsection.3.4}% 25 -\BOOKMARK [3][-]{subsubsection.3.4.9}{\376\377\171\301\133\306\152\041\137\017}{subsection.3.4}% 26 -\BOOKMARK [3][-]{subsubsection.3.4.10}{\376\377\173\024\213\260\177\026\217\221\121\205\144\034\175\042}{subsection.3.4}% 27 -\BOOKMARK [3][-]{subsubsection.3.4.11}{\376\377\152\041\147\177\117\277\173\176}{subsection.3.4}% 28 -\BOOKMARK [3][-]{subsubsection.3.4.12}{\376\377\213\355\227\363\124\054\121\231}{subsection.3.4}% 29 -\BOOKMARK [3][-]{subsubsection.3.4.13}{\376\377\213\355\227\363\124\010\142\020}{subsection.3.4}% 30 -\BOOKMARK [3][-]{subsubsection.3.4.14}{\376\377\133\371\213\335\137\017\131\047\152\041\127\213}{subsection.3.4}% 31 -\BOOKMARK [3][-]{subsubsection.3.4.15}{\376\377\144\244\126\336\122\237\200\375}{subsection.3.4}% 32 -\BOOKMARK [3][-]{subsubsection.3.4.16}{\376\377\203\267\123\326\127\060\164\006\117\115\177\156}{subsection.3.4}% 33 -\BOOKMARK [1][-]{section.4}{\376\377\133\236\215\365\145\066\203\267\124\214\117\123\117\032}{}% 34 -\BOOKMARK [2][-]{subsection.4.1}{\376\377\145\066\203\267}{section.4}% 35 -\BOOKMARK [2][-]{subsection.4.2}{\376\377\117\123\117\032}{section.4}% 36 -\BOOKMARK [2][-]{subsection.4.3}{\376\377\123\302\200\003\145\207\163\056\116\016\177\121\127\100}{section.4}% 37 -\BOOKMARK [3][-]{subsubsection.4.3.1}{\376\377\213\257\230\336\146\172\200\375\000A\000P\000I\116\313\176\315}{subsection.4.3}% 38 -\BOOKMARK [3][-]{subsubsection.4.3.2}{\376\377\166\176\136\246\177\373\213\321\000A\000P\000I\116\313\176\315}{subsection.4.3}% 39 -\BOOKMARK [3][-]{subsubsection.4.3.3}{\376\377\000U\000M\000L\136\372\152\041}{subsection.4.3}% 40 -\BOOKMARK [3][-]{subsubsection.4.3.4}{\376\377\000C\000o\000d\000e\000A\000r\000t\000s\215\050\221\317\122\006\147\220}{subsection.4.3}% 41 +\BOOKMARK [3][-]{subsubsection.3.3.2}{\376\377\124\004\122\237\200\375\116\343\170\001\211\304\152\041}{subsection.3.3}% 16 +\BOOKMARK [3][-]{subsubsection.3.3.3}{\376\377\176\364\142\244\124\016\166\204\215\050\221\317\122\006\147\220}{subsection.3.3}% 17 +\BOOKMARK [2][-]{subsection.3.4}{\376\377\176\364\142\244\124\016\166\204\217\157\116\366\123\237\127\213\116\345\123\312\122\237\200\375\134\125\171\072}{section.3}% 18 +\BOOKMARK [3][-]{subsubsection.3.4.1}{\376\377\213\276\177\156\165\114\227\142\200\314\146\157}{subsection.3.4}% 19 +\BOOKMARK [3][-]{subsubsection.3.4.2}{\376\377\153\042\217\316\165\114\227\142}{subsection.3.4}% 20 +\BOOKMARK [3][-]{subsubsection.3.4.3}{\376\377\166\173\137\125\133\306\170\001}{subsection.3.4}% 21 +\BOOKMARK [3][-]{subsubsection.3.4.4}{\376\377\177\373\213\321\122\237\200\375}{subsection.3.4}% 22 +\BOOKMARK [3][-]{subsubsection.3.4.5}{\376\377\143\322\121\145\126\376\162\107}{subsection.3.4}% 23 +\BOOKMARK [3][-]{subsubsection.3.4.6}{\376\377\176\337\213\241\133\127\173\046\116\052\145\160}{subsection.3.4}% 24 +\BOOKMARK [3][-]{subsubsection.3.4.7}{\376\377\133\314\145\207\147\054\122\237\200\375}{subsection.3.4}% 25 +\BOOKMARK [3][-]{subsubsection.3.4.8}{\376\377\147\027\213\373\122\237\200\375}{subsection.3.4}% 26 +\BOOKMARK [3][-]{subsubsection.3.4.9}{\376\377\171\301\133\306\152\041\137\017}{subsection.3.4}% 27 +\BOOKMARK [3][-]{subsubsection.3.4.10}{\376\377\173\024\213\260\177\026\217\221\121\205\144\034\175\042}{subsection.3.4}% 28 +\BOOKMARK [3][-]{subsubsection.3.4.11}{\376\377\152\041\147\177\117\277\173\176}{subsection.3.4}% 29 +\BOOKMARK [3][-]{subsubsection.3.4.12}{\376\377\213\355\227\363\124\054\121\231}{subsection.3.4}% 30 +\BOOKMARK [3][-]{subsubsection.3.4.13}{\376\377\213\355\227\363\124\010\142\020}{subsection.3.4}% 31 +\BOOKMARK [3][-]{subsubsection.3.4.14}{\376\377\133\371\213\335\137\017\131\047\152\041\127\213}{subsection.3.4}% 32 +\BOOKMARK [3][-]{subsubsection.3.4.15}{\376\377\144\244\126\336\122\237\200\375}{subsection.3.4}% 33 +\BOOKMARK [3][-]{subsubsection.3.4.16}{\376\377\203\267\123\326\127\060\164\006\117\115\177\156}{subsection.3.4}% 34 +\BOOKMARK [1][-]{section.4}{\376\377\133\236\215\365\145\066\203\267\124\214\117\123\117\032}{}% 35 +\BOOKMARK [2][-]{subsection.4.1}{\376\377\145\066\203\267}{section.4}% 36 +\BOOKMARK [2][-]{subsection.4.2}{\376\377\117\123\117\032}{section.4}% 37 +\BOOKMARK [2][-]{subsection.4.3}{\376\377\123\302\200\003\145\207\163\056\116\016\177\121\127\100}{section.4}% 38 +\BOOKMARK [3][-]{subsubsection.4.3.1}{\376\377\213\257\230\336\146\172\200\375\000A\000P\000I\116\313\176\315}{subsection.4.3}% 39 +\BOOKMARK [3][-]{subsubsection.4.3.2}{\376\377\166\176\136\246\177\373\213\321\000A\000P\000I\116\313\176\315}{subsection.4.3}% 40 +\BOOKMARK [3][-]{subsubsection.4.3.3}{\376\377\000U\000M\000L\136\372\152\041}{subsection.4.3}% 41 +\BOOKMARK [3][-]{subsubsection.4.3.4}{\376\377\000C\000o\000d\000e\000A\000r\000t\000s\215\050\221\317\122\006\147\220}{subsection.4.3}% 42 diff --git a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.pdf b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.pdf index a15c95d..1b8e6ae 100644 Binary files a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.pdf and b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.pdf differ diff --git a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.synctex.gz b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.synctex.gz index f379dfe..de26ec0 100644 Binary files a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.synctex.gz and b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.synctex.gz differ diff --git a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex index 5c9478f..87a5f7c 100644 --- a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex +++ b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex @@ -71,10 +71,10 @@ linkcolor=black 梳理了类与类之间的交互关系,聚焦核心功能(如便签创建、删除、移动)的实现路径,为后续功能扩展奠定了基础。 \item \textbf{代码标注}: - 对6个包中39个类的源码完成了3924行详细注释,包括类的功能说明、关键方法逻辑解析及重要变量定义,增强了代码的可读性和可维护性。 + 对6个包中39个类的源码以及res包中部分xml文件完成了总计3924左右行详细注释,包括类的功能说明、关键方法逻辑解析、关键语句和语句块功能说明以及重要变量定义,增强了代码的可读性和可维护性。 \item \textbf{功能扩展与维护}: - 在项目的基础上新增了16项功能,涵盖文本处理、界面优化、隐私保护、文本处理、语音交互、翻译等领域,显著提升了应用的实用性与用户体验。 + 在项目的基础上新增了16项功能,涵盖文本处理、界面优化、隐私保护、语音交互、翻译、大模型使用等领域,显著提升了应用的实用性与用户体验。 新增代码量约7000行,优化了代码质量并通过质量检测工具验证,确保结构清晰、逻辑一致。 \end{enumerate} @@ -370,7 +370,7 @@ Gtask包用于存放与数据更新,同步,检测异常相关的类和方法 \section{小米便签的代码标注} -小组对6个包中共39个类的代码进行了标注,标注的代码行数共有2350行。 +小组对6个包中共39个类的代码进行了标注,标注的代码行数共有3924行左右。 具体的,这些代码注释的分部如表2所示。 \begin{longtable}{|p{0.05\textwidth}|p{0.15\textwidth}|p{0.27\textwidth}|p{0.4\textwidth}|} @@ -537,7 +537,7 @@ Gtask包用于存放与数据更新,同步,检测异常相关的类和方法 \newpage \subsection{开源软件维护后所产生的设计} -\noindent维护后的小米便签主要增加和更改类的类图见图10,维护后产生的体系架构图见图11。 +\noindent维护后的小米便签主要更改了ui包和增加了第三方API包,ui包和第三方API包中增加和更改类的类图见图10,维护后产生的体系架构图见图11。 \begin{figure}[H] \centering @@ -593,7 +593,7 @@ Gtask包用于存放与数据更新,同步,检测异常相关的类和方法 \paragraph{5. 语音识别和语音合成相关类} \begin{itemize} - \item \textbf{IATActivity} 和 \textbf{IflytekActivity}: 处理语音输入功能,通过字段 \texttt{mIat: SpeechRecognizer} 初始化语音识别功能 (\texttt{initSpeech()} 方法)。 + \item \textbf{IATActivity} 和 \textbf{IflytekActivity}: 处理语音输入功能,通过字段 \texttt{SpeechRecognizer} 初始化语音识别功能 (\texttt{initSpeech()} 方法)。 \item \textbf{TtsDemo} 和 \textbf{TtsSettings}: 提供语音合成功能,其核心方法 \texttt{initSpeechSynthesizer()} 用于初始化语音合成引擎。 \item \textbf{SpeechApp}: 用作全局应用类,管理与语音相关的初始化参数,如 \texttt{PRIVACY\_KEY} 和 \texttt{msInitialize}。 \end{itemize} @@ -823,6 +823,51 @@ Gtask包用于存放与数据更新,同步,检测异常相关的类和方法 \end{figure} \end{enumerate} +\newpage +\subsubsection{各功能代码规模} +\begin{longtable}{|p{0.15\textwidth}|p{0.15\textwidth}|p{0.15\textwidth}|p{0.2\textwidth}|} + \caption{代码质量分析详细结果} \\ + + \hline + \footnotesize 序号 & \footnotesize 维护类别 & \footnotesize 名称 & \footnotesize 受影响的代码行数 \\ + \hline + \footnotesize 1 & \footnotesize 新增功能 & \footnotesize 设置界面背景 & \footnotesize 42 \\ + \hline + \footnotesize 2 & \footnotesize 新增功能 & \footnotesize 欢迎界面 & \footnotesize 115 \\ + \hline + \footnotesize 3 & \footnotesize 新增功能 & \footnotesize 登陆密码 & \footnotesize 224 \\ + \hline + \footnotesize 4 & \footnotesize 新增功能 & \footnotesize 翻译功能 & \footnotesize 255 \\ + \hline + \footnotesize 5 & \footnotesize 新增功能 & \footnotesize 插入图片 & \footnotesize 242 \\ + \hline + \footnotesize 6 & \footnotesize 新增功能 & \footnotesize 统计字符个数 & \footnotesize 169 \\ + \hline + \footnotesize 7 & \footnotesize 新增功能 & \footnotesize 富文本功能 & \footnotesize 224 \\ + \hline + \footnotesize 8 & \footnotesize 新增功能 & \footnotesize 朗读功能 & \footnotesize 114 \\ + \hline + \footnotesize 9 & \footnotesize 新增功能 & \footnotesize 私密模式 & \footnotesize 186 \\ + \hline + \footnotesize 10 & \footnotesize 新增功能 & \footnotesize 笔记编辑框内搜索 & \footnotesize 185 \\ + \hline + \footnotesize 11 & \footnotesize 新增功能 & \footnotesize 模板便签 & \footnotesize 102 \\ + \hline + \footnotesize 12 & \footnotesize 新增功能 & \footnotesize 语音听写 & \footnotesize 781 \\ + \hline + \footnotesize 13 & \footnotesize 新增功能 & \footnotesize 语音合成 & \footnotesize 797 \\ + \hline + \footnotesize 14 & \footnotesize 新增功能 & \footnotesize 对话式大模型 & \footnotesize 672 \\ + \hline + \footnotesize 15 & \footnotesize 新增功能 & \footnotesize 撤回功能 & \footnotesize 116 \\ + \hline + \footnotesize 16 & \footnotesize 新增功能 & \footnotesize 获取地理位置 & \footnotesize 147 \\ + \hline +\end{longtable} + + + + \newpage \subsubsection{维护后的质量分析} 在代码维护之后,我们小组再次对代码进行了质量分析,使用CodeArts中的代码审查功能对代码的质量进行分析。 @@ -1423,7 +1468,7 @@ Gtask包用于存放与数据更新,同步,检测异常相关的类和方法 \newpage 这里对对话式大模型以及语音合成与转写功能进行一部分特殊说明,由于使用了第三方SDK并且需要与第三方服务器(Iflytek Server等)连接,因此虚拟机 -必须需要连接网络(这一点百度翻译也是一样的)。其次,讯飞星火大模型和语音识别功能还依赖官方提供的特定MSC和aar文件,这些库依赖需要在build.gradle中额外声明(包括dependencies依赖项声明和依赖树结构),值得一提的是,该MSA和AAR文件都只支持arm64-v8a或armeabi-v7a处理器,部分虚拟机可能不具备调试的前提;最后,讯飞的SDK服务有一定期限,到期后需要用户重新购买服务,并在本项目中替换appid、密钥等信息。 +必须需要连接网络(这一点百度翻译也是一样的)。其次,讯飞星火大模型和语音识别功能还依赖官方提供的特定MSC和aar文件,这些库依赖需要在build.gradle中额外声明(包括dependencies依赖项声明和依赖树结构),对应的MSC和AAR文件已经上传至项目中的源码文件夹下的app子包的libs包中,值得一提的是,该MSA和AAR文件都只支持arm64-v8a或armeabi-v7a处理器,部分虚拟机可能不具备调试的前提;最后,讯飞的SDK服务有一定期限,到期后需要用户重新购买服务,并在本项目中替换appid、密钥等信息。 MSC的部分文件如表5所示: \begin{longtable}{|p{0.05\textwidth}|p{0.20\textwidth}|p{0.18\textwidth}|} \caption{} \\ diff --git a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.toc b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.toc index 4054f08..c83b25a 100644 --- a/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.toc +++ b/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.toc @@ -31,29 +31,30 @@ \contentsline {paragraph}{界面整体布局分析}{28}{section*.30}% \contentsline {subsection}{\numberline {3.3}维护代码数量以及质量情况}{31}{subsection.3.3}% \contentsline {subsubsection}{\numberline {3.3.1}维护代码数量}{31}{subsubsection.3.3.1}% -\contentsline {subsubsection}{\numberline {3.3.2}维护后的质量分析}{35}{subsubsection.3.3.2}% -\contentsline {subsection}{\numberline {3.4}维护后的软件原型以及功能展示}{39}{subsection.3.4}% -\contentsline {subsubsection}{\numberline {3.4.1}设置界面背景}{39}{subsubsection.3.4.1}% -\contentsline {subsubsection}{\numberline {3.4.2}欢迎界面}{40}{subsubsection.3.4.2}% -\contentsline {subsubsection}{\numberline {3.4.3}登录密码}{41}{subsubsection.3.4.3}% -\contentsline {subsubsection}{\numberline {3.4.4}翻译功能}{47}{subsubsection.3.4.4}% -\contentsline {subsubsection}{\numberline {3.4.5}插入图片}{51}{subsubsection.3.4.5}% -\contentsline {subsubsection}{\numberline {3.4.6}统计字符个数}{52}{subsubsection.3.4.6}% -\contentsline {subsubsection}{\numberline {3.4.7}富文本功能}{53}{subsubsection.3.4.7}% -\contentsline {subsubsection}{\numberline {3.4.8}朗读功能}{55}{subsubsection.3.4.8}% -\contentsline {subsubsection}{\numberline {3.4.9}私密模式}{56}{subsubsection.3.4.9}% -\contentsline {subsubsection}{\numberline {3.4.10}笔记编辑内搜索}{58}{subsubsection.3.4.10}% -\contentsline {subsubsection}{\numberline {3.4.11}模板便签}{60}{subsubsection.3.4.11}% -\contentsline {subsubsection}{\numberline {3.4.12}语音听写}{63}{subsubsection.3.4.12}% -\contentsline {subsubsection}{\numberline {3.4.13}语音合成}{65}{subsubsection.3.4.13}% -\contentsline {subsubsection}{\numberline {3.4.14}对话式大模型}{68}{subsubsection.3.4.14}% -\contentsline {subsubsection}{\numberline {3.4.15}撤回功能}{72}{subsubsection.3.4.15}% -\contentsline {subsubsection}{\numberline {3.4.16}获取地理位置}{73}{subsubsection.3.4.16}% -\contentsline {section}{\numberline {4}实践收获和体会}{74}{section.4}% -\contentsline {subsection}{\numberline {4.1}收获}{74}{subsection.4.1}% -\contentsline {subsection}{\numberline {4.2}体会}{74}{subsection.4.2}% -\contentsline {subsection}{\numberline {4.3}参考文献与网址}{75}{subsection.4.3}% -\contentsline {subsubsection}{\numberline {4.3.1}讯飞智能API介绍}{75}{subsubsection.4.3.1}% -\contentsline {subsubsection}{\numberline {4.3.2}百度翻译API介绍}{75}{subsubsection.4.3.2}% -\contentsline {subsubsection}{\numberline {4.3.3}UML建模}{75}{subsubsection.4.3.3}% -\contentsline {subsubsection}{\numberline {4.3.4}CodeArts质量分析}{75}{subsubsection.4.3.4}% +\contentsline {subsubsection}{\numberline {3.3.2}各功能代码规模}{35}{subsubsection.3.3.2}% +\contentsline {subsubsection}{\numberline {3.3.3}维护后的质量分析}{36}{subsubsection.3.3.3}% +\contentsline {subsection}{\numberline {3.4}维护后的软件原型以及功能展示}{40}{subsection.3.4}% +\contentsline {subsubsection}{\numberline {3.4.1}设置界面背景}{40}{subsubsection.3.4.1}% +\contentsline {subsubsection}{\numberline {3.4.2}欢迎界面}{41}{subsubsection.3.4.2}% +\contentsline {subsubsection}{\numberline {3.4.3}登录密码}{42}{subsubsection.3.4.3}% +\contentsline {subsubsection}{\numberline {3.4.4}翻译功能}{48}{subsubsection.3.4.4}% +\contentsline {subsubsection}{\numberline {3.4.5}插入图片}{52}{subsubsection.3.4.5}% +\contentsline {subsubsection}{\numberline {3.4.6}统计字符个数}{53}{subsubsection.3.4.6}% +\contentsline {subsubsection}{\numberline {3.4.7}富文本功能}{54}{subsubsection.3.4.7}% +\contentsline {subsubsection}{\numberline {3.4.8}朗读功能}{56}{subsubsection.3.4.8}% +\contentsline {subsubsection}{\numberline {3.4.9}私密模式}{57}{subsubsection.3.4.9}% +\contentsline {subsubsection}{\numberline {3.4.10}笔记编辑内搜索}{59}{subsubsection.3.4.10}% +\contentsline {subsubsection}{\numberline {3.4.11}模板便签}{61}{subsubsection.3.4.11}% +\contentsline {subsubsection}{\numberline {3.4.12}语音听写}{64}{subsubsection.3.4.12}% +\contentsline {subsubsection}{\numberline {3.4.13}语音合成}{66}{subsubsection.3.4.13}% +\contentsline {subsubsection}{\numberline {3.4.14}对话式大模型}{69}{subsubsection.3.4.14}% +\contentsline {subsubsection}{\numberline {3.4.15}撤回功能}{73}{subsubsection.3.4.15}% +\contentsline {subsubsection}{\numberline {3.4.16}获取地理位置}{74}{subsubsection.3.4.16}% +\contentsline {section}{\numberline {4}实践收获和体会}{75}{section.4}% +\contentsline {subsection}{\numberline {4.1}收获}{75}{subsection.4.1}% +\contentsline {subsection}{\numberline {4.2}体会}{75}{subsection.4.2}% +\contentsline {subsection}{\numberline {4.3}参考文献与网址}{76}{subsection.4.3}% +\contentsline {subsubsection}{\numberline {4.3.1}讯飞智能API介绍}{76}{subsubsection.4.3.1}% +\contentsline {subsubsection}{\numberline {4.3.2}百度翻译API介绍}{76}{subsubsection.4.3.2}% +\contentsline {subsubsection}{\numberline {4.3.3}UML建模}{76}{subsubsection.4.3.3}% +\contentsline {subsubsection}{\numberline {4.3.4}CodeArts质量分析}{76}{subsubsection.4.3.4}% diff --git a/doc/实践考评-阅读维护开源软件的汇报.pptx b/doc/实践考评-阅读维护开源软件的汇报.pptx index 237ff73..a33bf27 100644 Binary files a/doc/实践考评-阅读维护开源软件的汇报.pptx and b/doc/实践考评-阅读维护开源软件的汇报.pptx differ diff --git a/xiaomi-src/app/src/main/java/net/micode/notes/SparkChain/ImageGenerationActivity.java b/xiaomi-src/app/src/main/java/net/micode/notes/SparkChain/ImageGenerationActivity.java deleted file mode 100644 index 398bd5b..0000000 --- a/xiaomi-src/app/src/main/java/net/micode/notes/SparkChain/ImageGenerationActivity.java +++ /dev/null @@ -1,270 +0,0 @@ -package net.micode.notes.SparkChain; - - -import android.Manifest; -import android.app.Activity; -import android.content.pm.PackageManager; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.os.Bundle; -import android.provider.Settings; -import android.text.TextUtils; -import android.util.Log; -import android.view.View; -import android.widget.Button; -import android.widget.EditText; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.Nullable; -import androidx.appcompat.app.AppCompatActivity; -import androidx.core.app.ActivityCompat; -import androidx.core.content.ContextCompat; - -import com.iflytek.sparkchain.core.LLM; -import com.iflytek.sparkchain.core.LLMCallbacks; -import com.iflytek.sparkchain.core.LLMConfig; -import com.iflytek.sparkchain.core.LLMError; -import com.iflytek.sparkchain.core.LLMEvent; -import com.iflytek.sparkchain.core.LLMFactory; -import com.iflytek.sparkchain.core.LLMOutput; -import com.iflytek.sparkchain.core.LLMResult; -import com.iflytek.sparkchain.core.SparkChain; -import com.iflytek.sparkchain.core.SparkChainConfig; - -import net.micode.notes.R; - -import java.util.ArrayList; - -public class ImageGenerationActivity extends Activity implements View.OnClickListener{ - private static final String TAG = "AEE_ImageGeneration"; - LLM llm; - private ImageView imageView; - private TextView tv_result; - - private Button btn_imageGeneration_run_start,btn_imageGeneration_arun_start,btn_imageGeneration_stop; - - private EditText ed_input; - - private boolean isAuth = false; - - //Android permission ask for - private void Android_Permission_init(){ - ArrayList NOPER_List = new ArrayList(); - String tempList[]; - String Perm[] = {android.Manifest.permission.RECORD_AUDIO, //录音权限 - android.Manifest.permission.ACCESS_NETWORK_STATE, //络连接信息权限 - android.Manifest.permission.INTERNET, //连网权限 - Manifest.permission.READ_EXTERNAL_STORAGE,//qxq: - Manifest.permission.MANAGE_EXTERNAL_STORAGE,//qxq: - Manifest.permission.WRITE_EXTERNAL_STORAGE}; //应用写入设备的外部存储 - - //is permission granted ? otherwise add to 'List' - for(String P : Perm) - if(PackageManager.PERMISSION_GRANTED!= ContextCompat.checkSelfPermission(this,P)) - NOPER_List.add(P); - - tempList = new String[NOPER_List.size()]; - if(!NOPER_List.isEmpty()) - ActivityCompat.requestPermissions(this,NOPER_List.toArray(tempList),123); - - initSDK(); - } - - - /************************* - * 初始化SparkChainSDK - * *******************************/ - private void initSDK() { - Log.d(TAG,"initSDK"); - // 初始化SDK,Appid等信息在清单中配置 - SparkChainConfig sparkChainConfig = SparkChainConfig.builder(); - sparkChainConfig.appID(getResources().getString(R.string.appid)) - .apiKey(getResources().getString(R.string.apikey)) - .apiSecret(getResources().getString(R.string.apiSecret))//应用申请的appid三元组 -// .uid(getAndroidId()) - .logLevel(666); - - int ret = SparkChain.getInst().init(getApplicationContext(),sparkChainConfig); - String mresult; - if(ret == 0){ - mresult = "qxq:spark pro SDK初始化成功,请选择相应的功能点击体验。"; - isAuth = true; - }else{ - mresult = "SDK初始化失败,错误码:" + ret; - isAuth = false; - } - Log.d(TAG,mresult); - mshowInfo(mresult); - } - - private void mshowInfo(String text){ - runOnUiThread(new Runnable() { - @Override - public void run() { - //tv_result.setText(text); - } - }); - } - - - /********* - * 图片生成结果监听回调 - * ***********/ - private LLMCallbacks mLLMCallbacksListener = new LLMCallbacks() { - @Override - public void onLLMResult(LLMResult result, Object o) { - if(result.getImage()==null) - { - Log.d(TAG, "qxq:result return null,cannot show image"); - } - byte [] bytes = result.getImage();//获取图片生成结果二进制流,大模型一次性返回 - showImage(bytes); - showInfo("图片生成结束。"); - } - - @Override - public void onLLMEvent(LLMEvent llmEvent, Object o) { - - } - - @Override - public void onLLMError(LLMError error, Object o) { - int errCode = error.getErrCode(); - String errMsg = error.getErrMsg(); - String errInfo = "出错了,错误码:" + errCode + ",错误信息:" + errMsg; - showInfo(errInfo); - } - }; - - - - @Override - protected void onCreate(@Nullable Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_image_generation); - ed_input = findViewById(R.id.imageGeneration_input_text); - imageView = findViewById(R.id.imageGeneration_output_iv); - tv_result = findViewById(R.id.imageGeneration_Notification); - btn_imageGeneration_run_start = findViewById(R.id.imageGeneration_run_start_btn); - btn_imageGeneration_arun_start = findViewById(R.id.imageGeneration_arun_start_btn); - btn_imageGeneration_stop = findViewById(R.id.imageGeneration_stop_btn); - btn_imageGeneration_run_start.setOnClickListener(this); - btn_imageGeneration_arun_start.setOnClickListener(this); - btn_imageGeneration_stop.setOnClickListener(this); - setLLMConfig(); - Android_Permission_init();//qxq:进行模块分离之后,SDK的初始化在每个类中都要有 - } - - @Override - public void onClick(View view) { - switch(view.getId()){ - case R.id.imageGeneration_arun_start_btn: - if(llm != null){ - clearImage(); - showInfo("图片生成中,请稍后....."); - imageGeneration_arun_start(); - } - break; - case R.id.imageGeneration_run_start_btn: - if(llm != null){ - clearImage(); - showInfo("图片生成中,请稍后....."); - new Thread(){ - @Override - public void run() {//由于同步请求后该线程会卡主,为了防止卡主线程,故开启一个线程进行同步请求 - super.run(); - imageGeneration_run_start(); - } - }.start(); - } - break; - case R.id.imageGeneration_stop_btn: - if(llm != null){ - imageGeneration_stop(); - showInfo("已取消图片生成。"); - } - break; - } - } - /*************** - * 取消交互 - * ****************/ - private void imageGeneration_stop(){ - llm.stop(); - } - /*************** - * 开始交互,异步 - * ****************/ - private void imageGeneration_arun_start(){ - String content = ed_input.getText().toString(); - Log.d("SparkChain","content: " + content); - //异步请求 - llm.arun(content); - Log.d("SparkChain","qxq:发出请求: " + content); - } - /*************** - * 开始交互,同步 - * ****************/ - private void imageGeneration_run_start(){ - String content = ed_input.getText().toString(); - Log.d("SparkChain","content: " + content); - //同步请求 - LLMOutput syncOutput = llm.run(content); - if(syncOutput.getErrCode() == 0) { - byte [] bytes = syncOutput.getImage(); - if(bytes!=null) - Log.d(TAG, "同步调用:" + bytes.length); - else { - Log.d(TAG, "同步调用:获取结果失败"); - return; - } - showImage(bytes); - showInfo("图片生成结束。"); - }else { - Log.d(TAG, "同步调用:" + "errCode" + syncOutput.getErrCode() + " errMsg:" + syncOutput.getErrMsg()); - } - } - - - private void showImage(byte [] bytes){ - runOnUiThread(new Runnable() { - @Override - public void run() { - Bitmap bmp = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);//把二进制图片流转换成图片 - imageView.setImageBitmap(Bitmap.createScaledBitmap(bmp,bmp.getWidth(),bmp.getHeight(),false));//把图片设置到对应的控件 - } - }); - } - - private void clearImage(){ - runOnUiThread(new Runnable() { - @Override - public void run() { - imageView.setImageDrawable(null); - } - }); - } - - private void showInfo(String text){ - runOnUiThread(new Runnable() { - @Override - public void run() { - tv_result.setText(text); - } - }); - } - /*************** - * 配置文本交互LLM,注册结果监听回调 - * ******************/ - private void setLLMConfig(){ - llm = LLMFactory.imageGeneration(1024,1024); - llm.registerLLMCallbacks(mLLMCallbacksListener); - } - - @Override - protected void onDestroy() { - super.onDestroy(); - SparkChain.getInst().unInit();//qxq:逆初始化 - } -} diff --git a/xiaomi-src/app/src/main/java/net/micode/notes/SparkChain/ImageUnderstanding.java b/xiaomi-src/app/src/main/java/net/micode/notes/SparkChain/ImageUnderstanding.java deleted file mode 100644 index 3137e5b..0000000 --- a/xiaomi-src/app/src/main/java/net/micode/notes/SparkChain/ImageUnderstanding.java +++ /dev/null @@ -1,349 +0,0 @@ -package net.micode.notes.SparkChain; - -import android.app.Activity; -import android.content.Context; -import android.content.Intent; -import android.graphics.Color; -import android.graphics.drawable.Drawable; -import android.graphics.drawable.GradientDrawable; -import android.net.Uri; -import android.os.Bundle; -import android.text.SpannableString; -import android.text.method.ScrollingMovementMethod; -import android.util.Log; -import android.view.View; -import android.widget.Button; -import android.widget.EditText; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.Nullable; -import androidx.appcompat.app.AppCompatActivity; - -import com.iflytek.sparkchain.core.LLM; -import com.iflytek.sparkchain.core.LLMCallbacks; -import com.iflytek.sparkchain.core.LLMConfig; -import com.iflytek.sparkchain.core.LLMError; -import com.iflytek.sparkchain.core.LLMEvent; -import com.iflytek.sparkchain.core.LLMFactory; -import com.iflytek.sparkchain.core.LLMOutput; -import com.iflytek.sparkchain.core.LLMResult; -import com.iflytek.sparkchain.core.Memory; -import com.iflytek.sparkchain.core.SparkChain; -import com.iflytek.sparkchain.core.SparkChainConfig; - -import net.micode.notes.R; - -import java.io.ByteArrayOutputStream; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; - -public class ImageUnderstanding extends Activity implements View.OnClickListener{ - private static final String TAG = "AEE_imageUnderstanding"; - private static final int AUDIO_FILE_SELECT_CODE = 1024; - - private Button btn_imgInput,btn_arunStart,btn_stop; - - private TextView tv_Notification; - - private EditText ed_textInput; - - private String imagePath = null; - private int token = 0; - LLM llm; - /********* - * 图片理解结果监听回调 - * ***********/ - private LLMCallbacks mLLMCallbacksListener = new LLMCallbacks() { - @Override - public void onLLMResult(LLMResult llmResult, Object usrContext) { - if(token == (int)usrContext){ - Log.d(TAG,"onLLMResult\n"); - String content = llmResult.getContent();//获取大模型返回的结果信息 - Log.e(TAG,"onLLMResult:" + content); - int status = llmResult.getStatus(); - if(content != null) { - runOnUiThread(new Runnable() { - @Override - public void run() { - tv_Notification.append(content); - toend(); - } - }); - } - if(status == 2){//2表示大模型结果返回完成 - int completionTokens = llmResult.getCompletionTokens(); - int promptTokens = llmResult.getPromptTokens();// - int totalTokens = llmResult.getTotalTokens(); - Log.e(TAG,"completionTokens:" + completionTokens + "promptTokens:" + promptTokens + "totalTokens:" + totalTokens); - } - } - } - - @Override - public void onLLMEvent(LLMEvent llmEvent, Object o) { - - } - - @Override - public void onLLMError(LLMError error, Object o) { - runOnUiThread(new Runnable() { - @Override - public void run() { - tv_Notification.append("错误:" + " err:" + error.getErrCode() + " errDesc:" + error.getErrMsg() + "\n"); - } - }); - } - }; - private boolean isAuth = false; - - /************************* - * 初始化SparkChainSDK - * *******************************/ - private void initSDK() { - Log.d(TAG,"initSDK"); - //qxq:初始化SDK,Appid等信息在清单中配置 - SparkChainConfig sparkChainConfig = SparkChainConfig.builder(); - sparkChainConfig.appID(getResources().getString(R.string.appid)) - .apiKey(getResources().getString(R.string.apikey)) - .apiSecret(getResources().getString(R.string.apiSecret))//应用申请的appid三元组 -// .uid(getAndroidId()) - .logLevel(666); - - int ret = SparkChain.getInst().init(getApplicationContext(),sparkChainConfig); - String myresult; - if(ret == 0){ - myresult = "qxq:spark pro SDK初始化成功,请选择相应的功能点击体验。"; - isAuth = true; - }else{ - myresult = "SDK初始化失败,错误码:" + ret; - isAuth = false; - } - Log.d(TAG,myresult); - myshowInfo(myresult); - } - - private void myshowInfo(String text){ - runOnUiThread(new Runnable() { - @Override - public void run() { - //tv_result.setText(text); - } - }); - } - - @Override - protected void onCreate(@Nullable Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_image_understanding); - initView(); - initSDK();//qxq: - } - - private void initView(){ - btn_imgInput = findViewById(R.id.image_understanding_imginput); - btn_arunStart = findViewById(R.id.image_understanding_arun_start_btn); - btn_stop = findViewById(R.id.image_understanding_arun_stop_btn); - tv_Notification = findViewById(R.id.image_understanding_Notification); - tv_Notification.setMovementMethod(new ScrollingMovementMethod()); - ed_textInput = findViewById(R.id.image_understanding_input_text); - btn_imgInput.setOnClickListener(this); - btn_arunStart.setOnClickListener(this); - btn_stop.setOnClickListener(this); - setLLMConfig(); - } - - private void showInfo(String text){ - runOnUiThread(new Runnable() { - @Override - public void run() { - tv_Notification.setText(text); - } - }); - } - /*************** - * 配置文本交互LLM,注册结果监听回调 - * ******************/ - private void setLLMConfig(){ - LLMConfig llmConfig = LLMConfig.builder() - .domain("image"); - Memory window_memory = Memory.windowMemory(5); - llm = LLMFactory.imageUnderstanding(llmConfig,window_memory); - llm.registerLLMCallbacks(mLLMCallbacksListener); - } - /*************** - * 开始交互,异步 - * ****************/ - private void startChat() { - if(llm == null){ - Log.e(TAG,"startChat failed,please setLLMConfig before!"); - return; - } - String usrInputText = ed_textInput.getText().toString(); - Log.d(TAG,"用户输入:" + usrInputText); - if(usrInputText.length() >= 1) - tv_Notification.append("\n输入:\n " + usrInputText + "\n"); - token++; - Log.e(TAG,"SparkChain imagePath:\n" + imagePath); - int ret = -1; - if(imagePath!=null) { - llm.clearHistory();//重新传图片前,需要清空memory,因为memory带有上一次图片的信息 - ret = llm.arun(usrInputText, readFileByBytes(imagePath), token);//首轮会话需要带上图片信息 - }else { - ret = llm.arun(usrInputText, token);//多轮会话可以不用携带图片信息,SDK会在历史会话中自动拼接图片信息。 - } - if(ret != 0){ - Log.e(TAG,"SparkChain failed:\n" + ret); - } - - runOnUiThread(new Runnable() { - @Override - public void run() { - ed_textInput.setText(""); - tv_Notification.append("输出:\n "); - imagePath = null;//第一轮会话后清空图片信息 - } - }); - } - - /*************** - * 开始交互,同步。仅展示如何使用,demo中未使用此方式 - * ****************/ - private void syncStartChat(){ - if(llm == null){ - Log.e(TAG,"startChat failed,please setLLMConfig before!"); - return; - } - String usrInputText = ed_textInput.getText().toString(); - Log.d(TAG,"用户输入:" + usrInputText); - if(usrInputText.length() >= 1) - tv_Notification.append("\n输入:\n " + usrInputText + "\n"); - token++; - Log.e(TAG,"SparkChain imagePath:\n" + imagePath); - int ret = -1; - LLMOutput syncOutput = null; - if(imagePath!=null){ - llm.clearHistory();//重新传图片前,需要清空memory,因为memory带有上一次图片的信息 - syncOutput = llm.run(usrInputText,readFileByBytes(imagePath)); - } else{ - syncOutput = llm.run(usrInputText); - } - if(syncOutput.getErrCode() == 0) { - Log.i(TAG, "同步调用:" + syncOutput.getRole() + ":" + syncOutput.getContent()); - String results = syncOutput.getContent(); - showInfo(results); - }else { - String results = "同步调用:" + "errCode" + syncOutput.getErrCode() + " errMsg:" + syncOutput.getErrMsg(); - showInfo(results); - Log.e(TAG, results); - } - runOnUiThread(new Runnable() { - @Override - public void run() { - ed_textInput.setText(""); - tv_Notification.append("输出:\n "); - imagePath = null; - } - }); - } - - /*************** - * 取消交互 - * ****************/ - private void stop(){ - if(llm == null){ - Log.e(TAG,"startChat failed,please setLLMConfig before!"); - return; - } - llm.stop(); - } - - @Override - public void onClick(View view) { - switch (view.getId()){ - case R.id.image_understanding_imginput: - showFileChooser(); - break; - case R.id.image_understanding_arun_start_btn: - startChat(); -// syncStartChat(); - break; - case R.id.image_understanding_arun_stop_btn: - stop(); - break; - } - } - /*************** - * 调用文本管理器,让用户选择要传入的图片 - * ****************/ - private void showFileChooser() { - Log.d(TAG,"showFileChooser"); - //调用系统文件管理器 - Intent intent = new Intent(Intent.ACTION_GET_CONTENT); - intent.addCategory(Intent.CATEGORY_OPENABLE); - //设置文件格式 - intent.setType("*/*"); - startActivityForResult(intent, AUDIO_FILE_SELECT_CODE); - } - /*************** - * 监听用户选择的图片,获取图片所在的路径 - * ****************/ - @Override - protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { - switch (requestCode) { - case AUDIO_FILE_SELECT_CODE: - if (data != null) { - Uri uri = data.getData(); - //String path = com.example.sparkchaindemo.image_understanding.GetFilePathFromUri.getFileAbsolutePath(this, uri); - String path = net.micode.notes.SparkChain.GetFilePathFromUri.getFileAbsolutePath(this, uri); - imagePath = path; - } - showInfo("图片已设置完成:"+imagePath); - break; - } - super.onActivityResult(requestCode, resultCode, data); - - Log.d(TAG,"imagePath = " + imagePath); - } - /*************** - * 把对应路径的图片转换成二进制流 - * ****************/ - private byte[] readFileByBytes(String fileName) { - FileInputStream in = null; - try { - in = new FileInputStream(fileName); - } catch (FileNotFoundException e) { - Log.e("AEE", "readFileByBytes:" + e.toString()); - } - byte[] bytes = null; - try { - ByteArrayOutputStream out = new ByteArrayOutputStream(1024); - byte[] temp = new byte[1024]; - int size = 0; - while ((size = in.read(temp)) != -1) { - out.write(temp, 0, size); - } - in.close(); - bytes = out.toByteArray(); - } catch (Exception e1) { - e1.printStackTrace(); - } finally { - if (in != null) { - try { - in.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - } - return bytes; - } - - public void toend(){ - int scrollAmount = tv_Notification.getLayout().getLineTop(tv_Notification.getLineCount()) - tv_Notification.getHeight(); - if (scrollAmount > 0) { - tv_Notification.scrollTo(0, scrollAmount+10); - } - } -}