|
@@ -5,18 +5,22 @@ import static com.compdfkit.ui.contextmenu.CPDFContextMenuShowHelper.ReplaceEdit
|
|
|
import android.content.Context;
|
|
|
import android.content.Intent;
|
|
|
import android.graphics.RectF;
|
|
|
+import android.os.Environment;
|
|
|
+import android.provider.MediaStore;
|
|
|
import android.view.LayoutInflater;
|
|
|
import android.view.View;
|
|
|
import android.widget.Toast;
|
|
|
|
|
|
import androidx.fragment.app.FragmentActivity;
|
|
|
|
|
|
+import com.compdfkit.core.document.CPDFSdk;
|
|
|
import com.compdfkit.tools.R;
|
|
|
import com.compdfkit.tools.common.contextmenu.CPDFContextMenuHelper;
|
|
|
import com.compdfkit.tools.common.contextmenu.interfaces.ContextMenuEditImageProvider;
|
|
|
import com.compdfkit.tools.common.contextmenu.provider.ContextMenuMultipleLineView;
|
|
|
import com.compdfkit.tools.common.contextmenu.provider.ContextMenuView;
|
|
|
import com.compdfkit.tools.common.utils.CToastUtil;
|
|
|
+import com.compdfkit.tools.common.utils.image.CBitmapUtil;
|
|
|
import com.compdfkit.tools.common.views.pdfproperties.pdfstyle.CAnnotStyle;
|
|
|
import com.compdfkit.tools.common.views.pdfproperties.pdfstyle.CStyleDialogFragment;
|
|
|
import com.compdfkit.tools.common.views.pdfproperties.pdfstyle.CStyleType;
|
|
@@ -47,13 +51,13 @@ public class CEditImageContextMenuView implements ContextMenuEditImageProvider {
|
|
|
}
|
|
|
}
|
|
|
helper.dismissContextMenu();
|
|
|
- } );
|
|
|
+ });
|
|
|
menuView.addItem(R.string.tools_edit_image_property_rotate_left, 0, v -> {
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.ROTATE, -90.0f);
|
|
|
- } );
|
|
|
+ });
|
|
|
menuView.addItem(R.string.tools_edit_image_property_rotate_right, 0, v -> {
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.ROTATE, 90.0f);
|
|
|
- } );
|
|
|
+ });
|
|
|
menuView.addItem(R.string.tools_context_menu_image_replace, 1, v -> {
|
|
|
if (helper.getReaderView().getContext() instanceof FragmentActivity) {
|
|
|
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
|
|
@@ -63,21 +67,24 @@ public class CEditImageContextMenuView implements ContextMenuEditImageProvider {
|
|
|
((FragmentActivity) context).startActivityForResult(intent, ReplaceEditImageArea);
|
|
|
helper.dismissContextMenu();
|
|
|
}
|
|
|
- } );
|
|
|
- menuView.addItem(R.string.tools_context_menu_image_extract, 1,v -> {
|
|
|
- try{
|
|
|
- String sdPath = pageView.getContext().getFilesDir().getAbsolutePath();
|
|
|
- File file = new File(sdPath, System.currentTimeMillis() + ".png");
|
|
|
+ });
|
|
|
+ menuView.addItem(R.string.tools_context_menu_image_extract, 1, v -> {
|
|
|
+ try {
|
|
|
+ Context context = pageView.getContext();
|
|
|
+ String sdPath = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath();
|
|
|
+ File file = new File(sdPath, "ComPDFKit" + File.separator + System.currentTimeMillis() + ".png");
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.EXTRACT_IMAGE, file.getAbsolutePath());
|
|
|
+ MediaStore.Images.Media.insertImage(context.getContentResolver(),
|
|
|
+ file.getAbsolutePath(), file.getName(), "description");
|
|
|
helper.dismissContextMenu();
|
|
|
Toast.makeText(pageView.getContext(), R.string.tools_export_success, Toast.LENGTH_LONG).show();
|
|
|
- }catch (Exception e){
|
|
|
+ } catch (Exception e) {
|
|
|
CToastUtil.showLongToast(pageView.getContext(), R.string.tools_page_edit_extract_fail);
|
|
|
}
|
|
|
- } );
|
|
|
+ });
|
|
|
menuView.addSecondView();
|
|
|
View view = LayoutInflater.from(pageView.getContext()).inflate(R.layout.tools_context_menu_image_item_layout, null);
|
|
|
- view.setOnClickListener(v-> {
|
|
|
+ view.setOnClickListener(v -> {
|
|
|
menuView.showSecondView(false);
|
|
|
});
|
|
|
menuView.addItemToSecondView(view);
|
|
@@ -93,33 +100,33 @@ public class CEditImageContextMenuView implements ContextMenuEditImageProvider {
|
|
|
menuView.addItemToSecondView(R.string.tools_context_menu_transparacy_100, v -> {
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.TRANCPARENCY, 1f);
|
|
|
});
|
|
|
- menuView.addItem(R.string.tools_context_menu_image_transparancy,1, v -> {
|
|
|
+ menuView.addItem(R.string.tools_context_menu_image_transparancy, 1, v -> {
|
|
|
menuView.showSecondView(true);
|
|
|
- } );
|
|
|
- menuView.addItem(R.string.tools_context_menu_image_horizental_mirror, 1,v -> {
|
|
|
+ });
|
|
|
+ menuView.addItem(R.string.tools_context_menu_image_horizental_mirror, 1, v -> {
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.HORIZENTAL_MIRROR, null);
|
|
|
- } );
|
|
|
- menuView.addItem(R.string.tools_context_menu_image_vertical_mirror, 2,v -> {
|
|
|
+ });
|
|
|
+ menuView.addItem(R.string.tools_context_menu_image_vertical_mirror, 2, v -> {
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.VERTICLE_MIRROR, null);
|
|
|
- } );
|
|
|
+ });
|
|
|
menuView.addItem(R.string.tools_crop, 2, v -> {
|
|
|
pageView.setCropCallback(rect -> {
|
|
|
});
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.ENTER_CROP, null);
|
|
|
helper.dismissContextMenu();
|
|
|
- } );
|
|
|
- menuView.addItem(R.string.tools_delete, 2,v -> {
|
|
|
+ });
|
|
|
+ menuView.addItem(R.string.tools_delete, 2, v -> {
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.DELETE, null);
|
|
|
helper.dismissContextMenu();
|
|
|
- } );
|
|
|
- menuView.addItem(R.string.tools_context_menu_image_copy, 2,v -> {
|
|
|
+ });
|
|
|
+ menuView.addItem(R.string.tools_context_menu_image_copy, 2, v -> {
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.COPY, null);
|
|
|
helper.dismissContextMenu();
|
|
|
- } );
|
|
|
- menuView.addItem(R.string.tools_context_menu_image_cut, 2,v -> {
|
|
|
+ });
|
|
|
+ menuView.addItem(R.string.tools_context_menu_image_cut, 2, v -> {
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.CUT, null);
|
|
|
helper.dismissContextMenu();
|
|
|
- } );
|
|
|
+ });
|
|
|
return menuView;
|
|
|
}
|
|
|
|
|
@@ -132,11 +139,11 @@ public class CEditImageContextMenuView implements ContextMenuEditImageProvider {
|
|
|
menuView.addItem(R.string.tools_context_menu_image_crop_done, v -> {
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.CROP, null);
|
|
|
helper.dismissContextMenu();
|
|
|
- } );
|
|
|
+ });
|
|
|
menuView.addItem(R.string.tools_context_menu_image_crop_cancel, v -> {
|
|
|
pageView.operateEditImageArea(CPDFPageView.EditImageFuncType.EXIT_CROP, null);
|
|
|
helper.dismissContextMenu();
|
|
|
- } );
|
|
|
+ });
|
|
|
return menuView;
|
|
|
}
|
|
|
}
|