Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
P
Pdf one Reader
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wanglei
Pdf one Reader
Commits
0dd1906a
Commit
0dd1906a
authored
Nov 14, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...启动页
parent
78a05aab
Show whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
390 additions
and
36 deletions
+390
-36
ConstObject.kt
app/src/main/java/com/base/pdfoneread/bean/ConstObject.kt
+8
-0
DocumentActivity.kt
.../java/com/base/pdfoneread/ui/document/DocumentActivity.kt
+31
-3
MainActivity.kt
...src/main/java/com/base/pdfoneread/ui/main/MainActivity.kt
+46
-3
PermissionFragment.kt
...in/java/com/base/pdfoneread/ui/main/PermissionFragment.kt
+50
-0
MyStartActivity.kt
...ain/java/com/base/pdfoneread/ui/splash/MyStartActivity.kt
+4
-1
SplashViewModel.kt
...ain/java/com/base/pdfoneread/ui/splash/SplashViewModel.kt
+3
-2
NameDialog.kt
app/src/main/java/com/base/pdfoneread/ui/views/NameDialog.kt
+11
-9
SafUtils.kt
app/src/main/java/com/base/pdfoneread/utils/SafUtils.kt
+39
-0
bg_ff5910_15.xml
app/src/main/res/drawable/bg_ff5910_15.xml
+5
-0
bg_ff5910_2_5.xml
app/src/main/res/drawable/bg_ff5910_2_5.xml
+5
-0
activity_my_start.xml
app/src/main/res/layout/activity_my_start.xml
+15
-2
dialog_document_rename.xml
app/src/main/res/layout/dialog_document_rename.xml
+32
-16
fragment_permission.xml
app/src/main/res/layout/fragment_permission.xml
+130
-0
icon_file.png
app/src/main/res/mipmap-xxhdpi/icon_file.png
+0
-0
icon_no.png
app/src/main/res/mipmap-xxhdpi/icon_no.png
+0
-0
nav_main.xml
app/src/main/res/navigation/nav_main.xml
+5
-0
splash_loading.json
app/src/main/res/raw/splash_loading.json
+1
-0
strings.xml
app/src/main/res/values/strings.xml
+5
-0
No files found.
app/src/main/java/com/base/pdfoneread/bean/ConstObject.kt
View file @
0dd1906a
...
@@ -38,6 +38,14 @@ object ConstObject {
...
@@ -38,6 +38,14 @@ object ConstObject {
field
=
value
field
=
value
AppPreferences
.
getInstance
().
put
(
"ifAgreePrivacy"
,
value
,
true
)
AppPreferences
.
getInstance
().
put
(
"ifAgreePrivacy"
,
value
,
true
)
}
}
var
showPermissionPageGuide
=
false
get
()
{
return
AppPreferences
.
getInstance
().
getBoolean
(
"showPermissionPageGuide"
,
field
)
}
set
(
value
)
{
field
=
value
AppPreferences
.
getInstance
().
put
(
"showPermissionPageGuide"
,
value
,
true
)
}
var
haveSaveDemo
=
false
var
haveSaveDemo
=
false
get
()
{
get
()
{
return
AppPreferences
.
getInstance
().
getBoolean
(
"haveSaveDemo"
,
field
)
return
AppPreferences
.
getInstance
().
getBoolean
(
"haveSaveDemo"
,
field
)
...
...
app/src/main/java/com/base/pdfoneread/ui/document/DocumentActivity.kt
View file @
0dd1906a
...
@@ -2,6 +2,7 @@ package com.base.pdfoneread.ui.document
...
@@ -2,6 +2,7 @@ package com.base.pdfoneread.ui.document
import
android.annotation.SuppressLint
import
android.annotation.SuppressLint
import
android.graphics.Color
import
android.graphics.Color
import
android.net.Uri
import
android.view.View
import
android.view.View
import
androidx.activity.addCallback
import
androidx.activity.addCallback
import
androidx.core.view.isVisible
import
androidx.core.view.isVisible
...
@@ -18,9 +19,11 @@ import com.base.pdfoneread.bean.DocumentBean.Companion.TYPE_WORD
...
@@ -18,9 +19,11 @@ import com.base.pdfoneread.bean.DocumentBean.Companion.TYPE_WORD
import
com.base.pdfoneread.databinding.ActivityDocumentBinding
import
com.base.pdfoneread.databinding.ActivityDocumentBinding
import
com.base.pdfoneread.ui.BaseActivity
import
com.base.pdfoneread.ui.BaseActivity
import
com.base.pdfoneread.ui.views.DialogCallBack
import
com.base.pdfoneread.ui.views.DialogCallBack
import
com.base.pdfoneread.ui.views.DocumentDialog.showDeleteDialog
import
com.base.pdfoneread.ui.views.DocumentDialog.showDocumentHomeMoreDialog
import
com.base.pdfoneread.ui.views.DocumentDialog.showDocumentHomeMoreDialog
import
com.base.pdfoneread.ui.views.PdfDialog.showPdfHomeMoreDialog
import
com.base.pdfoneread.ui.views.PdfDialog.showPdfHomeMoreDialog
import
com.base.pdfoneread.utils.BarUtils
import
com.base.pdfoneread.utils.BarUtils
import
com.base.pdfoneread.utils.IntentShareUtils.shareMutDocuments
import
com.base.pdfoneread.utils.LogEx
import
com.base.pdfoneread.utils.LogEx
import
com.base.pdfoneread.utils.PdfBoxUtils.checkPdfEncryption
import
com.base.pdfoneread.utils.PdfBoxUtils.checkPdfEncryption
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.Dispatchers
...
@@ -129,10 +132,10 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>(), DialogCallBack
...
@@ -129,10 +132,10 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>(), DialogCallBack
changeRvItemSelect
(
binding
.
ivAllSelector
.
isSelected
)
changeRvItemSelect
(
binding
.
ivAllSelector
.
isSelected
)
}
}
binding
.
llDelete
.
setOnClickListener
{
binding
.
llDelete
.
setOnClickListener
{
deleteSelectDocument
()
}
}
binding
.
llShare
.
setOnClickListener
{
binding
.
llShare
.
setOnClickListener
{
shareSelectDocument
()
}
}
binding
.
flPaixu
.
setOnClickListener
{
binding
.
flPaixu
.
setOnClickListener
{
...
@@ -154,6 +157,30 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>(), DialogCallBack
...
@@ -154,6 +157,30 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>(), DialogCallBack
}
}
}
}
private
fun
shareSelectDocument
()
{
val
uris
=
adapter
?.
items
?.
filter
{
it
.
isSelect
}
?.
map
{
it
.
uri
?:
Uri
.
EMPTY
}
uris
?:
return
val
arrayList
=
arrayListOf
<
Uri
>()
arrayList
.
addAll
(
uris
)
shareMutDocuments
(
type
,
arrayList
)
}
private
fun
deleteSelectDocument
()
{
showDeleteDialog
{
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
try
{
val
items
=
adapter
?.
items
?.
filter
{
it
.
isSelect
}
val
unDeleteItems
=
adapter
?.
items
?.
filter
{
!
it
.
isSelect
}
items
?.
forEach
{
File
(
it
.
path
).
delete
()
}
launch
(
Dispatchers
.
Main
)
{
adapter
?.
submitList
(
unDeleteItems
)
}
}
catch
(
e
:
Exception
)
{
initData
()
}
}
}
}
@SuppressLint
(
"NotifyDataSetChanged"
)
@SuppressLint
(
"NotifyDataSetChanged"
)
private
fun
changeSelectUI
(
isSelect
:
Boolean
)
{
private
fun
changeSelectUI
(
isSelect
:
Boolean
)
{
if
(
isSelect
)
{
if
(
isSelect
)
{
...
@@ -207,7 +234,6 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>(), DialogCallBack
...
@@ -207,7 +234,6 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>(), DialogCallBack
runOnUI
(
list
)
runOnUI
(
list
)
}
}
private
fun
initData
()
=
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
private
fun
initData
()
=
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
val
context
=
this
@DocumentActivity
val
context
=
this
@DocumentActivity
val
list
=
when
(
type
)
{
val
list
=
when
(
type
)
{
...
@@ -235,6 +261,7 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>(), DialogCallBack
...
@@ -235,6 +261,7 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>(), DialogCallBack
}
}
//region DialogCallBack
//region DialogCallBack
@SuppressLint
(
"NotifyDataSetChanged"
)
override
fun
renameDocumentBean
(
file
:
File
,
newName
:
String
)
{
override
fun
renameDocumentBean
(
file
:
File
,
newName
:
String
)
{
kotlin
.
runCatching
{
kotlin
.
runCatching
{
val
newFile
=
File
(
file
.
parentFile
,
newName
)
val
newFile
=
File
(
file
.
parentFile
,
newName
)
...
@@ -258,6 +285,7 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>(), DialogCallBack
...
@@ -258,6 +285,7 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>(), DialogCallBack
}
}
}
}
@SuppressLint
(
"NotifyDataSetChanged"
)
override
fun
changePdfLock
(
item
:
DocumentBean
)
{
override
fun
changePdfLock
(
item
:
DocumentBean
)
{
val
pdf
=
adapter
?.
items
?.
find
{
it
.
path
==
item
.
path
}
val
pdf
=
adapter
?.
items
?.
find
{
it
.
path
==
item
.
path
}
pdf
?.
state
=
checkPdfEncryption
(
item
.
path
)
pdf
?.
state
=
checkPdfEncryption
(
item
.
path
)
...
...
app/src/main/java/com/base/pdfoneread/ui/main/MainActivity.kt
View file @
0dd1906a
...
@@ -3,6 +3,7 @@ package com.base.pdfoneread.ui.main
...
@@ -3,6 +3,7 @@ package com.base.pdfoneread.ui.main
import
android.annotation.SuppressLint
import
android.annotation.SuppressLint
import
android.content.Intent
import
android.content.Intent
import
android.graphics.Color
import
android.graphics.Color
import
android.view.View
import
androidx.activity.addCallback
import
androidx.activity.addCallback
import
androidx.core.view.updatePadding
import
androidx.core.view.updatePadding
import
androidx.fragment.app.Fragment
import
androidx.fragment.app.Fragment
...
@@ -10,6 +11,7 @@ import androidx.lifecycle.lifecycleScope
...
@@ -10,6 +11,7 @@ import androidx.lifecycle.lifecycleScope
import
androidx.navigation.NavController
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
androidx.navigation.fragment.NavHostFragment
import
com.base.pdfoneread.R
import
com.base.pdfoneread.R
import
com.base.pdfoneread.bean.ConstObject.showPermissionPageGuide
import
com.base.pdfoneread.databinding.ActivityMainBinding
import
com.base.pdfoneread.databinding.ActivityMainBinding
import
com.base.pdfoneread.ui.BaseActivity
import
com.base.pdfoneread.ui.BaseActivity
import
com.base.pdfoneread.bean.HomeUIBean.Companion.UI_TYPE_GRID
import
com.base.pdfoneread.bean.HomeUIBean.Companion.UI_TYPE_GRID
...
@@ -31,6 +33,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -31,6 +33,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
}
}
var
homeUiType
=
UI_TYPE_GRID
var
homeUiType
=
UI_TYPE_GRID
var
navWhere
:
String
=
NAV_HOME
private
lateinit
var
navController
:
NavController
private
lateinit
var
navController
:
NavController
...
@@ -46,9 +49,10 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -46,9 +49,10 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
changeHomeRvIcon
()
changeHomeRvIcon
()
if
(!
checkStorePermission
())
{
if
(!
checkStorePermission
()
&&
showPermissionPageGuide
)
{
showStoragePermission
(
launcher
)
{}
showStoragePermission
(
launcher
)
{}
}
}
}
}
override
fun
onResume
()
{
override
fun
onResume
()
{
...
@@ -63,8 +67,6 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -63,8 +67,6 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
binding
.
llHome
.
setOnClickListener
{
binding
.
llHome
.
setOnClickListener
{
changeHomeUI
()
changeHomeUI
()
}
}
binding
.
llHome
.
callOnClick
()
binding
.
llRecent
.
setOnClickListener
{
binding
.
llRecent
.
setOnClickListener
{
changeRecentUI
()
changeRecentUI
()
}
}
...
@@ -86,6 +88,25 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -86,6 +88,25 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
binding
.
flSearch
.
setOnClickListener
{
binding
.
flSearch
.
setOnClickListener
{
startActivity
(
Intent
(
this
,
SearchActivity
::
class
.
java
))
startActivity
(
Intent
(
this
,
SearchActivity
::
class
.
java
))
}
}
handleNav
()
intent
.
extras
?.
clear
()
}
private
fun
handleNav
()
{
navWhere
=
intent
.
extras
?.
getString
(
"navWhere"
)
?:
NAV_HOME
when
(
navWhere
)
{
NAV_HOME
->
changeHomeUI
()
NAV_RECENT
->
changeRecentUI
()
NAV_SETTING
->
changeSettingUI
()
NAV_PERMISSION
->
{
if
(
checkStorePermission
())
{
changeHomeUI
()
}
else
{
changePermissionUI
()
}
}
}
}
}
private
fun
changeHomeRvIcon
()
{
private
fun
changeHomeRvIcon
()
{
...
@@ -154,4 +175,26 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -154,4 +175,26 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
}
}
private
fun
changePermissionUI
()
{
binding
.
flRvMode
.
visibility
=
View
.
INVISIBLE
binding
.
flSearch
.
visibility
=
View
.
INVISIBLE
binding
.
ivHome
.
isSelected
=
true
binding
.
tvHome
.
isSelected
=
true
val
appName
=
resources
.
getString
(
R
.
string
.
app_name
)
binding
.
tvTittle
.
text
=
colorSpanner
(
appName
,
Color
.
parseColor
(
"#FD1010"
),
0
,
3
)
if
(
getNavCurrentFragment
()
!
is
PermissionFragment
)
{
navController
.
popBackStack
()
navController
.
navigate
(
R
.
id
.
permissionFragment
)
showPermissionPageGuide
=
true
}
}
companion
object
{
const
val
NAV_HOME
=
"nav_home"
const
val
NAV_RECENT
=
"nav_recent"
const
val
NAV_SETTING
=
"nav_setting"
const
val
NAV_PERMISSION
=
"nav_permission"
}
}
}
\ No newline at end of file
app/src/main/java/com/base/pdfoneread/ui/main/PermissionFragment.kt
0 → 100644
View file @
0dd1906a
package
com.base.pdfoneread.ui.main
import
android.os.Bundle
import
androidx.fragment.app.Fragment
import
android.view.LayoutInflater
import
android.view.View
import
android.view.ViewGroup
import
com.base.pdfoneread.databinding.FragmentPermissionBinding
import
com.base.pdfoneread.utils.PermissionUtils.requestStoragePermission
import
com.base.pdfoneread.utils.SafUtils.jumpOpenDocumentThenPersistable
import
com.base.pdfoneread.utils.ToastUtils.toast
class
PermissionFragment
:
Fragment
()
{
private
lateinit
var
binding
:
FragmentPermissionBinding
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
}
override
fun
onCreateView
(
inflater
:
LayoutInflater
,
container
:
ViewGroup
?,
savedInstanceState
:
Bundle
?
):
View
{
binding
=
FragmentPermissionBinding
.
inflate
(
layoutInflater
)
return
binding
.
root
}
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
super
.
onViewCreated
(
view
,
savedInstanceState
)
binding
.
tvSet
.
setOnClickListener
{
val
activity
=
requireActivity
()
as
MainActivity
?
activity
?:
return
@setOnClickListener
requireContext
().
requestStoragePermission
(
activity
.
launcher
)
{}
}
binding
.
tvFileGo
.
setOnClickListener
{
val
activity
=
requireActivity
()
as
MainActivity
?
activity
?:
return
@setOnClickListener
requireContext
().
jumpOpenDocumentThenPersistable
(
activity
.
launcher
)
{
uri
->
requireContext
().
toast
(
"uri=$uri"
)
}
}
}
companion
object
{
}
}
\ No newline at end of file
app/src/main/java/com/base/pdfoneread/ui/splash/MyStartActivity.kt
View file @
0dd1906a
...
@@ -18,6 +18,7 @@ import com.base.pdfoneread.helper.UmpUtils.umpCalled
...
@@ -18,6 +18,7 @@ import com.base.pdfoneread.helper.UmpUtils.umpCalled
import
com.base.pdfoneread.helper.UmpUtils.umpCanAd
import
com.base.pdfoneread.helper.UmpUtils.umpCanAd
import
com.base.pdfoneread.ui.BaseActivity
import
com.base.pdfoneread.ui.BaseActivity
import
com.base.pdfoneread.ui.main.MainActivity
import
com.base.pdfoneread.ui.main.MainActivity
import
com.base.pdfoneread.ui.main.MainActivity.Companion.NAV_PERMISSION
import
com.base.pdfoneread.utils.BarUtils
import
com.base.pdfoneread.utils.BarUtils
import
com.base.pdfoneread.utils.LogEx
import
com.base.pdfoneread.utils.LogEx
import
com.base.pdfoneread.utils.SpannableUtils
import
com.base.pdfoneread.utils.SpannableUtils
...
@@ -126,7 +127,9 @@ class MyStartActivity : BaseActivity<ActivityMyStartBinding>() {
...
@@ -126,7 +127,9 @@ class MyStartActivity : BaseActivity<ActivityMyStartBinding>() {
private
fun
firstStartJump
()
{
private
fun
firstStartJump
()
{
isFirstStart
=
false
isFirstStart
=
false
startActivity
(
Intent
(
this
,
MainActivity
::
class
.
java
))
startActivity
(
Intent
(
this
,
MainActivity
::
class
.
java
).
apply
{
putExtra
(
"navWhere"
,
NAV_PERMISSION
)
})
}
}
override
fun
onPause
()
{
override
fun
onPause
()
{
...
...
app/src/main/java/com/base/pdfoneread/ui/splash/SplashViewModel.kt
View file @
0dd1906a
...
@@ -10,6 +10,7 @@ import kotlinx.coroutines.Job
...
@@ -10,6 +10,7 @@ import kotlinx.coroutines.Job
import
kotlinx.coroutines.delay
import
kotlinx.coroutines.delay
import
kotlinx.coroutines.launch
import
kotlinx.coroutines.launch
import
com.base.pdfoneread.utils.LogEx
import
com.base.pdfoneread.utils.LogEx
import
kotlinx.coroutines.Dispatchers
class
SplashViewModel
:
ViewModel
()
{
class
SplashViewModel
:
ViewModel
()
{
...
@@ -25,12 +26,12 @@ class SplashViewModel : ViewModel() {
...
@@ -25,12 +26,12 @@ class SplashViewModel : ViewModel() {
if
(
ConstObject
.
ifAgreePrivacy
&&
startJumpJob
)
{
if
(
ConstObject
.
ifAgreePrivacy
&&
startJumpJob
)
{
if
(
jumpJob
==
null
)
{
if
(
jumpJob
==
null
)
{
val
startTime
=
System
.
currentTimeMillis
()
val
startTime
=
System
.
currentTimeMillis
()
jumpJob
=
viewModelScope
.
launch
{
jumpJob
=
viewModelScope
.
launch
(
Dispatchers
.
IO
)
{
LogEx
.
logDebug
(
TAG
,
"open_ad_loading=$loadingTime"
)
LogEx
.
logDebug
(
TAG
,
"open_ad_loading=$loadingTime"
)
delay
(
loadingTime
*
1000L
)
delay
(
loadingTime
*
1000L
)
val
endTime
=
System
.
currentTimeMillis
()
val
endTime
=
System
.
currentTimeMillis
()
LogEx
.
logDebug
(
TAG
,
"超时跳转 time=${endTime - startTime}"
)
LogEx
.
logDebug
(
TAG
,
"超时跳转 time=${endTime - startTime}"
)
splashActivity
.
jumpNext
()
launch
(
Dispatchers
.
Main
)
{
splashActivity
.
jumpNext
()
}
}
}
}
}
}
}
...
...
app/src/main/java/com/base/pdfoneread/ui/views/NameDialog.kt
View file @
0dd1906a
package
com.base.pdfoneread.ui.views
package
com.base.pdfoneread.ui.views
import
android.app.AlertDialog
import
android.content.Context
import
android.content.Context
import
android.view.Gravity
import
android.view.LayoutInflater
import
android.view.LayoutInflater
import
android.view.View
import
android.view.View
import
android.view.WindowManager
import
android.view.WindowManager
import
androidx.core.widget.addTextChangedListener
import
androidx.core.widget.addTextChangedListener
import
com.base.pdfoneread.R
import
com.base.pdfoneread.R
import
com.base.pdfoneread.databinding.DialogDocumentDetailBinding
import
com.base.pdfoneread.databinding.DialogDocumentRenameBinding
import
com.base.pdfoneread.databinding.DialogDocumentRenameBinding
import
com.base.pdfoneread.ui.views.DocumentDialog.showDocumentDetail
import
com.base.pdfoneread.utils.KotlinExt.toFormatTime2
import
com.base.pdfoneread.utils.KotlinExt.toFormatTime2
import
com.base.pdfoneread.utils.ToastUtils.toast
import
com.base.pdfoneread.utils.ToastUtils.toast
import
com.google.android.material.bottomsheet.BottomSheetBehavior
import
com.google.android.material.bottomsheet.BottomSheetBehavior
...
@@ -22,20 +26,18 @@ object NameDialog {
...
@@ -22,20 +26,18 @@ object NameDialog {
okAction
:
((
newName
:
String
)
->
Unit
)?
=
null
,
okAction
:
((
newName
:
String
)
->
Unit
)?
=
null
,
dismissAction
:
(()
->
Unit
)?
=
null
dismissAction
:
(()
->
Unit
)?
=
null
)
{
)
{
val
dialog
=
BottomSheetDialog
(
this
,
R
.
style
.
BottomSheetDialog
)
val
dialog
=
AlertDialog
.
Builder
(
this
).
create
(
)
val
binding
=
DialogDocumentRenameBinding
.
inflate
(
LayoutInflater
.
from
(
this
))
val
binding
=
DialogDocumentRenameBinding
.
inflate
(
LayoutInflater
.
from
(
this
))
dialog
.
set
Content
View
(
binding
.
root
)
dialog
.
setView
(
binding
.
root
)
dialog
.
setCanceledOnTouchOutside
(
true
)
dialog
.
setCanceledOnTouchOutside
(
true
)
val
window
=
dialog
.
window
window
?.
setSoftInputMode
(
WindowManager
.
LayoutParams
.
SOFT_INPUT_ADJUST_RESIZE
)
dialog
.
show
()
dialog
.
show
()
val
parentView
=
binding
.
root
.
parent
as
View
val
params
=
dialog
.
window
?.
attributes
val
behavior
=
BottomSheetBehavior
.
from
(
parentView
)
params
?.
gravity
=
Gravity
.
CENTER
//展开
params
?.
width
=
resources
.
getDimensionPixelSize
(
R
.
dimen
.
dp_345
)
behavior
.
state
=
BottomSheetBehavior
.
STATE_EXPANDED
dialog
.
window
?.
attributes
=
params
dialog
.
window
?.
setBackgroundDrawableResource
(
android
.
R
.
color
.
transparent
)
binding
.
edit
.
addTextChangedListener
{
binding
.
edit
.
addTextChangedListener
{
binding
.
tvOk
.
isEnabled
=
!
it
.
isNullOrEmpty
()
binding
.
tvOk
.
isEnabled
=
!
it
.
isNullOrEmpty
()
...
...
app/src/main/java/com/base/pdfoneread/utils/SafUtils.kt
0 → 100644
View file @
0dd1906a
package
com.base.pdfoneread.utils
import
android.app.Activity
import
android.content.Context
import
android.content.Intent
import
android.net.Uri
import
android.os.Build
import
android.provider.DocumentsContract
object
SafUtils
{
fun
Context
.
persistableUri
(
treeUri
:
Uri
)
{
contentResolver
.
takePersistableUriPermission
(
treeUri
,
Intent
.
FLAG_GRANT_READ_URI_PERMISSION
or
Intent
.
FLAG_GRANT_WRITE_URI_PERMISSION
)
}
fun
Context
.
jumpOpenDocumentThenPersistable
(
launcher
:
ActivityLauncher
,
callBack
:
(
uri
:
Uri
?)
->
Unit
)
{
val
intent
=
Intent
(
Intent
.
ACTION_OPEN_DOCUMENT
)
val
downloadsUri
=
Uri
.
parse
(
"content://com.android.providers.downloads.documents/tree/downloads"
)
// 可以设置一个初始URI,当文件选择器加载时会显示这个URI指向的文件夹
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
O
)
{
intent
.
putExtra
(
DocumentsContract
.
EXTRA_INITIAL_URI
,
downloadsUri
)
}
launcher
.
launch
(
intent
)
{
result
->
if
(
result
.
resultCode
==
Activity
.
RESULT_OK
)
{
val
treeUri
=
result
.
data
?.
data
treeUri
?.
let
{
persistableUri
(
it
)
}
callBack
.
invoke
(
treeUri
)
}
}
}
}
\ No newline at end of file
app/src/main/res/drawable/bg_ff5910_15.xml
0 → 100644
View file @
0dd1906a
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<solid
android:color=
"#FF5910"
/>
<corners
android:radius=
"10dp"
/>
</shape>
\ No newline at end of file
app/src/main/res/drawable/bg_ff5910_2_5.xml
0 → 100644
View file @
0dd1906a
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<solid
android:color=
"#FF5910"
/>
<corners
android:radius=
"2.5dp"
/>
</shape>
\ No newline at end of file
app/src/main/res/layout/activity_my_start.xml
View file @
0dd1906a
...
@@ -43,13 +43,26 @@
...
@@ -43,13 +43,26 @@
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"24dp"
android:layout_marginTop=
"24dp"
android:text=
"@string/your_full_document_reader"
android:textColor=
"#8E95A0"
android:textColor=
"#8E95A0"
android:textSize=
"15sp"
android:textSize=
"15sp"
android:textStyle=
"bold"
android:textStyle=
"bold"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/tv_app_name"
app:layout_constraintTop_toBottomOf=
"@id/tv_app_name"
/>
android:text=
"Your full document reader"
/>
<com.base.pdfoneread.ui.views.XmlLottieAnimationView
android:id=
"@+id/lottie"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:layout_marginBottom=
"40dp"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:lottie_autoPlay=
"true"
app:lottie_loop=
"true"
app:lottie_rawRes=
"@raw/splash_loading"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/dialog_document_rename.xml
View file @
0dd1906a
...
@@ -2,15 +2,16 @@
...
@@ -2,15 +2,16 @@
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"
match_parent
"
android:layout_width=
"
360dp
"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:background=
"@drawable/bg_f
3f3f3_tlr2
5"
android:background=
"@drawable/bg_f
fffff_tlr1
5"
android:orientation=
"vertical"
>
android:orientation=
"vertical"
>
<FrameLayout
<FrameLayout
android:id=
"@+id/fl"
android:id=
"@+id/fl"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"65dp"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"40dp"
app:layout_constraintTop_toTopOf=
"parent"
>
app:layout_constraintTop_toTopOf=
"parent"
>
<TextView
<TextView
...
@@ -35,22 +36,37 @@
...
@@ -35,22 +36,37 @@
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/fl"
>
app:layout_constraintTop_toBottomOf=
"@id/fl"
>
<FrameLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginHorizontal=
"16dp"
android:layout_marginTop=
"32dp"
>
<EditText
<EditText
android:id=
"@+id/edit"
android:id=
"@+id/edit"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"55dp"
android:layout_height=
"55dp"
android:layout_marginHorizontal=
"16dp"
android:layout_marginTop=
"32dp"
android:background=
"@drawable/bg_stoke_bababa_10"
android:background=
"@drawable/bg_stoke_bababa_10"
android:ellipsize=
"end"
android:ellipsize=
"end"
android:gravity=
"center_vertical"
android:gravity=
"center_vertical"
android:paddingHorizontal=
"20dp"
android:paddingStart=
"20dp"
android:paddingEnd=
"40dp"
android:singleLine=
"true"
android:singleLine=
"true"
android:text=
"DEMO.pdf"
android:text=
"DEMO.pdf"
android:textColor=
"#333333"
android:textColor=
"#333333"
android:textSize=
"18sp"
android:textSize=
"18sp"
tools:ignore=
"Autofill,HardcodedText,LabelFor,TextFields"
/>
tools:ignore=
"Autofill,HardcodedText,LabelFor,TextFields"
/>
<ImageView
android:id=
"@+id/iv_x"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical|end"
tools:ignore=
"ContentDescription"
/>
</FrameLayout>
<LinearLayout
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
...
...
app/src/main/res/layout/fragment_permission.xml
0 → 100644
View file @
0dd1906a
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
tools:context=
".ui.main.PermissionFragment"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"0dp"
android:layout_weight=
"1"
android:orientation=
"vertical"
app:layout_constraintTop_toTopOf=
"parent"
>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"120dp"
android:src=
"@mipmap/no_empty"
tools:ignore=
"ContentDescription"
/>
<TextView
android:id=
"@+id/tv_1"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"24dp"
android:text=
"No permissions"
android:textColor=
"#010101"
android:textSize=
"20sp"
android:textStyle=
"bold"
tools:ignore=
"HardcodedText"
/>
<TextView
android:id=
"@+id/tv_2"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"2dp"
android:text=
"@string/authorization_required_to_read_all_files"
android:textColor=
"#9E9FA2"
android:textSize=
"16sp"
tools:ignore=
"HardcodedText"
/>
<TextView
android:id=
"@+id/tv_set"
android:layout_width=
"160dp"
android:layout_height=
"50dp"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"80dp"
android:layout_marginBottom=
"50dp"
android:background=
"@drawable/bg_ff5910_15"
android:gravity=
"center"
android:text=
"@string/go_to_set"
android:textColor=
"@color/white"
android:textSize=
"18sp"
android:textStyle=
"bold"
/>
</LinearLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width=
"match_parent"
android:layout_height=
"80dp"
android:background=
"#F3F4F6"
>
<ImageView
android:id=
"@+id/iv_file"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"20dp"
android:src=
"@mipmap/icon_file"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:ignore=
"ContentDescription"
/>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_marginHorizontal=
"16dp"
android:text=
"@string/you_can_open_files_through_nfile_manager"
android:textColor=
"@color/black"
android:textSize=
"15sp"
app:layout_constraintBottom_toBottomOf=
"@id/iv_file"
app:layout_constraintEnd_toStartOf=
"@id/tv_file_go"
app:layout_constraintStart_toEndOf=
"@id/iv_file"
app:layout_constraintTop_toTopOf=
"@id/iv_file"
/>
<TextView
android:id=
"@+id/tv_file_go"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"8dp"
android:background=
"@drawable/bg_ff5910_2_5"
android:gravity=
"center"
android:paddingHorizontal=
"24dp"
android:paddingVertical=
"8dp"
android:text=
"@string/go"
android:textColor=
"@color/white"
android:textSize=
"15sp"
android:textStyle=
"bold"
app:layout_constraintBottom_toBottomOf=
"@id/iv_file"
app:layout_constraintEnd_toStartOf=
"@id/fl_close"
app:layout_constraintTop_toTopOf=
"@id/iv_file"
/>
<FrameLayout
android:id=
"@+id/fl_close"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:padding=
"16dp"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:ignore=
"ContentDescription"
>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:src=
"@mipmap/icon_no"
/>
</FrameLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>
\ No newline at end of file
app/src/main/res/mipmap-xxhdpi/icon_file.png
0 → 100644
View file @
0dd1906a
1.03 KB
app/src/main/res/mipmap-xxhdpi/icon_no.png
0 → 100644
View file @
0dd1906a
1.92 KB
app/src/main/res/navigation/nav_main.xml
View file @
0dd1906a
...
@@ -20,4 +20,9 @@
...
@@ -20,4 +20,9 @@
android:name=
"com.base.pdfoneread.ui.main.SettingFragment"
android:name=
"com.base.pdfoneread.ui.main.SettingFragment"
android:label=
"fragment_setting"
android:label=
"fragment_setting"
tools:layout=
"@layout/fragment_setting"
/>
tools:layout=
"@layout/fragment_setting"
/>
<fragment
android:id=
"@+id/permissionFragment"
android:name=
"com.base.pdfoneread.ui.main.PermissionFragment"
android:label=
"fragment_permission"
tools:layout=
"@layout/fragment_permission"
/>
</navigation>
</navigation>
\ No newline at end of file
app/src/main/res/raw/splash_loading.json
0 → 100644
View file @
0dd1906a
{
"v"
:
"5.5.7"
,
"fr"
:
24
,
"ip"
:
0
,
"op"
:
17
,
"w"
:
33
,
"h"
:
20
,
"nm"
:
"书页动效"
,
"ddd"
:
0
,
"assets"
:[],
"layers"
:[{
"ddd"
:
0
,
"ind"
:
1
,
"ty"
:
4
,
"nm"
:
"“书页动效”轮廓 2"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
10
},
"p"
:{
"a"
:
0
,
"k"
:[
16.5
,
10
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
16.5
,
10
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
-100
,
100
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
8
,
"s"
:[{
"i"
:[[
0.002
,
-1.22
],[
0
,
-0.353
],[
0
,
0
],[
0
,
0.58
],[
-0.002
,
2.909
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.001
,
0.839
],[
0
,
0
],[
-0.002
,
-0.281
],[
0.002
,
-3.589
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
2.515
]],
"v"
:[[
-7.56
,
-5.062
],[
-7.562
,
-3.595
],[
-7.562
,
2.555
],[
-7.564
,
1.006
],[
-7.563
,
-4.164
],[
-7.564
,
-4.539
],[
-7.548
,
-9.997
],[
-7.554
,
-8.905
]],
"c"
:
true
}]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
10
,
"s"
:[{
"i"
:[[
0.626
,
-1.628
],[
0.067
,
-0.336
],[
0
,
0
],[
-0.203
,
0.46
],[
-1.202
,
2.381
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.226
,
0.604
],[
0
,
0
],[
0.077
,
-0.272
],[
0.816
,
-1.85
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-1.286
,
1.905
]],
"v"
:[[
-6.938
,
-4.83
],[
-7.312
,
-3.595
],[
-7.312
,
2.555
],[
-6.941
,
1.329
],[
-3.5
,
-2.527
],[
-3.384
,
-2.831
],[
-3.595
,
-8.55
],[
-3.823
,
-8.176
]],
"c"
:
true
}]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
12
,
"s"
:[{
"i"
:[[
1.41
,
-1.156
],[
0.133
,
-0.318
],[
0
,
0
],[
-0.376
,
0.351
],[
-2.827
,
2.665
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.45
,
0.369
],[
0
,
0
],[
0.156
,
-0.263
],[
2.178
,
-2.033
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-2.392
,
1.676
]],
"v"
:[[
-6.316
,
-4.599
],[
-7.062
,
-3.595
],[
-7.062
,
2.555
],[
-6.318
,
1.653
],[
0.968
,
-1.389
],[
1.202
,
-1.624
],[
0.669
,
-8.04
],[
-0.092
,
-7.447
]],
"c"
:
true
}]},{
"t"
:
16
,
"s"
:[{
"i"
:[[
1.776
,
0
],[
0.267
,
-0.283
],[
0
,
0
],[
-0.58
,
0
],[
-3.678
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.839
,
0
],[
0
,
0
],[
0.279
,
-0.144
],[
4.108
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-3.824
,
0
]],
"v"
:[[
-5.072
,
-4.135
],[
-6.562
,
-3.594
],[
-6.562
,
2.555
],[
-5.072
,
2.299
],[
6.061
,
4.135
],[
6.562
,
4.135
],[
5.011
,
-3.113
],[
3.182
,
-3.113
]],
"c"
:
true
}]}],
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
24.062
,
13.865
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
8
,
"s"
:[{
"i"
:[[
0.002
,
-1.359
],[
0
,
-0.652
],[
0
,
0
],[
-0.001
,
1.709
],[
-0.001
,
6.846
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.001
,
0.602
],[
0
,
0
],[
0
,
-0.73
],[
0.002
,
-3.824
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-0.005
,
4.092
]],
"v"
:[[
-7.994
,
-6.273
],[
-8
,
-4.871
],[
-8
,
5.418
],[
-8.002
,
2.87
],[
-7.999
,
-3.877
],[
-7.999
,
-4.203
],[
-7.983
,
-12.936
],[
-7.987
,
-11.584
]],
"c"
:
true
}]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
10
,
"s"
:[{
"i"
:[[
1.146
,
-1.33
],[
0.169
,
-0.677
],[
0
,
0
],[
-0.396
,
1.201
],[
-2.024
,
3.173
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.319
,
0.385
],[
0
,
0
],[
0.091
,
-0.717
],[
1.235
,
-2.991
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-1.357
,
3.137
]],
"v"
:[[
-7.455
,
-6.252
],[
-8.125
,
-4.872
],[
-8
,
5.418
],[
-7.324
,
3.167
],[
-2.991
,
-1.939
],[
-2.781
,
-2.355
],[
-3.32
,
-11.849
],[
-3.834
,
-10.75
]],
"c"
:
true
}]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
12
,
"s"
:[{
"i"
:[[
2.291
,
-1.301
],[
0.339
,
-0.702
],[
0
,
0
],[
-0.791
,
0.692
],[
-3.501
,
2.954
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.545
,
0.309
],[
0
,
0
],[
0.181
,
-0.703
],[
2.468
,
-2.159
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-2.709
,
2.182
]],
"v"
:[[
-6.916
,
-6.23
],[
-8.25
,
-4.872
],[
-8
,
5.418
],[
-6.646
,
3.464
],[
1.985
,
-0.063
],[
2.438
,
-0.508
],[
1.344
,
-10.763
],[
0.318
,
-9.916
]],
"c"
:
true
}]},{
"t"
:
16
,
"s"
:[{
"i"
:[[
2.323
,
0
],[
0.678
,
-0.751
],[
0
,
0
],[
-1.709
,
0
],[
-6.118
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-1.098
,
0
],[
0
,
0
],[
0.363
,
-0.676
],[
5.777
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-5.001
,
0
]],
"v"
:[[
-5.837
,
-6
],[
-8.5
,
-4.873
],[
-8
,
5.418
],[
-5.291
,
4.058
],[
7.844
,
6
],[
8.5
,
6
],[
5.829
,
-4.873
],[
3.436
,
-4.873
]],
"c"
:
true
}]}],
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"mm"
,
"mm"
:
4
,
"nm"
:
"合并路径 1"
,
"mn"
:
"ADBE Vector Filter - Merge"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.877999997606
,
0.125
,
0.125
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
24.5
,
14
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 2"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
2
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
24.5
,
14
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
24.5
,
14
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
1.776
,
0
],[
0.267
,
-0.283
],[
0
,
0
],[
-0.58
,
0
],[
-3.678
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.839
,
0
],[
0
,
0
],[
0.279
,
-0.144
],[
4.108
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-3.824
,
0
]],
"v"
:[[
-5.072
,
-4.135
],[
-6.562
,
-3.594
],[
-6.562
,
2.555
],[
-5.072
,
2.299
],[
6.061
,
4.135
],[
6.562
,
4.135
],[
5.011
,
-3.113
],[
3.182
,
-3.113
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
24.062
,
13.865
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 3"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
2.323
,
0
],[
0.678
,
-0.751
],[
0
,
0
],[
-1.709
,
0
],[
-6.118
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-1.098
,
0
],[
0
,
0
],[
0.363
,
-0.676
],[
5.777
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-5.001
,
0
]],
"v"
:[[
-5.837
,
-6
],[
-8.5
,
-4.873
],[
-8
,
5.418
],[
-5.291
,
4.058
],[
7.844
,
6
],[
8.5
,
6
],[
5.829
,
-4.873
],[
3.436
,
-4.873
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"mm"
,
"mm"
:
4
,
"nm"
:
"合并路径 1"
,
"mn"
:
"ADBE Vector Filter - Merge"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.877999997606
,
0.125
,
0.125
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
24.5
,
14
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 4"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
2
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
-1.777
,
0
],[
-0.267
,
-0.283
],[
0
,
0
],[
0.58
,
0
],[
3.677
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
0.839
,
0
],[
0
,
0
],[
-0.279
,
-0.144
],[
-4.108
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
3.824
,
0
]],
"v"
:[[
5.072
,
-4.135
],[
6.562
,
-3.594
],[
6.562
,
2.555
],[
5.072
,
2.299
],[
-6.06
,
4.135
],[
-6.562
,
4.135
],[
-5.011
,
-3.113
],[
-3.182
,
-3.113
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
8.938
,
13.865
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 5"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
3
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
-2.324
,
0
],[
-0.678
,
-0.751
],[
0
,
0
],[
1.709
,
0
],[
6.117
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
1.098
,
0
],[
0
,
0
],[
-0.363
,
-0.676
],[
-5.777
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
5.001
,
0
]],
"v"
:[[
5.837
,
-6
],[
8.5
,
-4.873
],[
8
,
5.418
],[
5.291
,
4.058
],[
-7.844
,
6
],[
-8.5
,
6
],[
-5.829
,
-4.873
],[
-3.437
,
-4.873
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"mm"
,
"mm"
:
4
,
"nm"
:
"合并路径 1"
,
"mn"
:
"ADBE Vector Filter - Merge"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.877999997606
,
0.125
,
0.125
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
8.5
,
14
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 6"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
4
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
16.5
,
14
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
16.5
,
14
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"2"
,
"np"
:
4
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
2
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
8
,
"op"
:
17
,
"st"
:
8
,
"bm"
:
0
},{
"ddd"
:
0
,
"ind"
:
2
,
"ty"
:
4
,
"nm"
:
"“书页动效”轮廓"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
10
},
"p"
:{
"a"
:
0
,
"k"
:[
16.5
,
10
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
16.5
,
10
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
0
,
"s"
:[{
"i"
:[[
1.776
,
0
],[
0.267
,
-0.283
],[
0
,
0
],[
-0.58
,
0
],[
-3.678
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.839
,
0
],[
0
,
0
],[
0.279
,
-0.144
],[
4.108
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-3.824
,
0
]],
"v"
:[[
-5.072
,
-4.135
],[
-6.562
,
-3.594
],[
-6.562
,
2.555
],[
-5.072
,
2.299
],[
6.061
,
4.135
],[
6.562
,
4.135
],[
5.011
,
-3.113
],[
3.182
,
-3.113
]],
"c"
:
true
}]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
4
,
"s"
:[{
"i"
:[[
1.41
,
-1.156
],[
0.133
,
-0.318
],[
0
,
0
],[
-0.376
,
0.351
],[
-2.827
,
2.665
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.45
,
0.369
],[
0
,
0
],[
0.156
,
-0.263
],[
2.178
,
-2.033
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-2.392
,
1.676
]],
"v"
:[[
-6.316
,
-4.599
],[
-7.062
,
-3.595
],[
-7.062
,
2.555
],[
-6.318
,
1.653
],[
0.968
,
-1.389
],[
1.202
,
-1.624
],[
0.669
,
-8.04
],[
-0.092
,
-7.447
]],
"c"
:
true
}]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
6
,
"s"
:[{
"i"
:[[
0.626
,
-1.628
],[
0.067
,
-0.336
],[
0
,
0
],[
-0.203
,
0.46
],[
-1.202
,
2.381
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.226
,
0.604
],[
0
,
0
],[
0.077
,
-0.272
],[
0.816
,
-1.85
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-1.286
,
1.905
]],
"v"
:[[
-6.938
,
-4.83
],[
-7.312
,
-3.595
],[
-7.312
,
2.555
],[
-6.941
,
1.329
],[
-3.5
,
-2.527
],[
-3.384
,
-2.831
],[
-3.595
,
-8.55
],[
-3.823
,
-8.176
]],
"c"
:
true
}]},{
"t"
:
8
,
"s"
:[{
"i"
:[[
0.002
,
-1.22
],[
0
,
-0.353
],[
0
,
0
],[
0
,
0.58
],[
-0.002
,
2.909
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.001
,
0.839
],[
0
,
0
],[
-0.002
,
-0.281
],[
0.002
,
-3.589
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
2.515
]],
"v"
:[[
-7.56
,
-5.062
],[
-7.562
,
-3.595
],[
-7.562
,
2.555
],[
-7.564
,
1.006
],[
-7.563
,
-4.164
],[
-7.564
,
-4.539
],[
-7.548
,
-9.997
],[
-7.554
,
-8.905
]],
"c"
:
true
}]}],
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
24.062
,
13.865
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
0
,
"s"
:[{
"i"
:[[
2.323
,
0
],[
0.678
,
-0.751
],[
0
,
0
],[
-1.709
,
0
],[
-6.118
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-1.098
,
0
],[
0
,
0
],[
0.363
,
-0.676
],[
5.777
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-5.001
,
0
]],
"v"
:[[
-5.837
,
-6
],[
-8.5
,
-4.873
],[
-8
,
5.418
],[
-5.291
,
4.058
],[
7.844
,
6
],[
8.5
,
6
],[
5.829
,
-4.873
],[
3.436
,
-4.873
]],
"c"
:
true
}]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
4
,
"s"
:[{
"i"
:[[
2.291
,
-1.301
],[
0.339
,
-0.702
],[
0
,
0
],[
-0.791
,
0.692
],[
-3.501
,
2.954
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.545
,
0.309
],[
0
,
0
],[
0.181
,
-0.703
],[
2.468
,
-2.159
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-2.709
,
2.182
]],
"v"
:[[
-6.916
,
-6.23
],[
-8.25
,
-4.872
],[
-8
,
5.418
],[
-6.646
,
3.464
],[
1.985
,
-0.063
],[
2.438
,
-0.508
],[
1.344
,
-10.763
],[
0.318
,
-9.916
]],
"c"
:
true
}]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
6
,
"s"
:[{
"i"
:[[
1.146
,
-1.33
],[
0.169
,
-0.677
],[
0
,
0
],[
-0.396
,
1.201
],[
-2.024
,
3.173
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.319
,
0.385
],[
0
,
0
],[
0.091
,
-0.717
],[
1.235
,
-2.991
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-1.357
,
3.137
]],
"v"
:[[
-7.455
,
-6.252
],[
-8.125
,
-4.872
],[
-8
,
5.418
],[
-7.324
,
3.167
],[
-2.991
,
-1.939
],[
-2.781
,
-2.355
],[
-3.32
,
-11.849
],[
-3.834
,
-10.75
]],
"c"
:
true
}]},{
"t"
:
8
,
"s"
:[{
"i"
:[[
0.002
,
-1.359
],[
0
,
-0.652
],[
0
,
0
],[
-0.001
,
1.709
],[
-0.001
,
6.846
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.001
,
0.602
],[
0
,
0
],[
0
,
-0.73
],[
0.002
,
-3.824
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-0.005
,
4.092
]],
"v"
:[[
-7.994
,
-6.273
],[
-8
,
-4.871
],[
-8
,
5.418
],[
-8.002
,
2.87
],[
-7.999
,
-3.877
],[
-7.999
,
-4.203
],[
-7.983
,
-12.936
],[
-7.987
,
-11.584
]],
"c"
:
true
}]}],
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"mm"
,
"mm"
:
4
,
"nm"
:
"合并路径 1"
,
"mn"
:
"ADBE Vector Filter - Merge"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.877999997606
,
0.125
,
0.125
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
24.5
,
14
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 2"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
2
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
24.5
,
14
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
24.5
,
14
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
1.776
,
0
],[
0.267
,
-0.283
],[
0
,
0
],[
-0.58
,
0
],[
-3.678
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-0.839
,
0
],[
0
,
0
],[
0.279
,
-0.144
],[
4.108
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-3.824
,
0
]],
"v"
:[[
-5.072
,
-4.135
],[
-6.562
,
-3.594
],[
-6.562
,
2.555
],[
-5.072
,
2.299
],[
6.061
,
4.135
],[
6.562
,
4.135
],[
5.011
,
-3.113
],[
3.182
,
-3.113
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
24.062
,
13.865
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 3"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
2.323
,
0
],[
0.678
,
-0.751
],[
0
,
0
],[
-1.709
,
0
],[
-6.118
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
-1.098
,
0
],[
0
,
0
],[
0.363
,
-0.676
],[
5.777
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
-5.001
,
0
]],
"v"
:[[
-5.837
,
-6
],[
-8.5
,
-4.873
],[
-8
,
5.418
],[
-5.291
,
4.058
],[
7.844
,
6
],[
8.5
,
6
],[
5.829
,
-4.873
],[
3.436
,
-4.873
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"mm"
,
"mm"
:
4
,
"nm"
:
"合并路径 1"
,
"mn"
:
"ADBE Vector Filter - Merge"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.877999997606
,
0.125
,
0.125
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
24.5
,
14
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 4"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
2
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
-1.777
,
0
],[
-0.267
,
-0.283
],[
0
,
0
],[
0.58
,
0
],[
3.677
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
0.839
,
0
],[
0
,
0
],[
-0.279
,
-0.144
],[
-4.108
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
3.824
,
0
]],
"v"
:[[
5.072
,
-4.135
],[
6.562
,
-3.594
],[
6.562
,
2.555
],[
5.072
,
2.299
],[
-6.06
,
4.135
],[
-6.562
,
4.135
],[
-5.011
,
-3.113
],[
-3.182
,
-3.113
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
8.938
,
13.865
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 5"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
3
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
-2.324
,
0
],[
-0.678
,
-0.751
],[
0
,
0
],[
1.709
,
0
],[
6.117
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
1.098
,
0
],[
0
,
0
],[
-0.363
,
-0.676
],[
-5.777
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
5.001
,
0
]],
"v"
:[[
5.837
,
-6
],[
8.5
,
-4.873
],[
8
,
5.418
],[
5.291
,
4.058
],[
-7.844
,
6
],[
-8.5
,
6
],[
-5.829
,
-4.873
],[
-3.437
,
-4.873
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"路径 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"mm"
,
"mm"
:
4
,
"nm"
:
"合并路径 1"
,
"mn"
:
"ADBE Vector Filter - Merge"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.877999997606
,
0.125
,
0.125
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"填充 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
8.5
,
14
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"组 6"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
4
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
16.5
,
14
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
16.5
,
14
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"变换"
}],
"nm"
:
"2"
,
"np"
:
4
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
2
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
8
,
"st"
:
0
,
"bm"
:
0
}],
"markers"
:[]}
\ No newline at end of file
app/src/main/res/values/strings.xml
View file @
0dd1906a
...
@@ -62,5 +62,10 @@
...
@@ -62,5 +62,10 @@
<string
name=
"password_error"
>
Password Error
</string>
<string
name=
"password_error"
>
Password Error
</string>
<string
name=
"confirm"
>
Confirm
</string>
<string
name=
"confirm"
>
Confirm
</string>
<string
name=
"merge"
>
Merge
</string>
<string
name=
"merge"
>
Merge
</string>
<string
name=
"authorization_required_to_read_all_files"
>
Authorization required to read all files.
</string>
<string
name=
"go_to_set"
>
Go to set
</string>
<string
name=
"go"
>
Go
</string>
<string
name=
"you_can_open_files_through_nfile_manager"
>
You can open files through\n\"File Manager\".
</string>
<string
name=
"your_full_document_reader"
>
Your full document reader
</string>
</resources>
</resources>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment