PDF-based JavaScript calculator in Kotlin for Android
An example PDF that implements a simple calculator app with JavaScript inside the document. Get additional resources by visiting our guide on PDF annotation actions in Android.
/* *   Copyright © 2020-2025 PSPDFKit GmbH. All rights reserved. * *   The PSPDFKit Sample applications are licensed with a modified BSD license. *   Please see License for details. This notice may not be removed from this file. */
package com.pspdfkit.catalog.examples.kotlin
import android.content.Contextimport com.pspdfkit.catalog.Rimport com.pspdfkit.configuration.activity.PdfActivityConfigurationimport com.pspdfkit.configuration.activity.ThumbnailBarModeimport com.pspdfkit.configuration.activity.UserInterfaceViewModeimport com.pspdfkit.configuration.page.PageFitModeimport com.pspdfkit.configuration.sharing.ShareFeatures
/** * Opens the JavaScript Calculator example from assets. */class JavaScriptCalculatorExample(context: Context) : AssetExample(context, R.string.javaScriptCalculatorExampleTitle, R.string.javaScriptCalculatorExampleDescription) {
    override val assetPath: String        get() = "Calculator.pdf"
    override fun prepareConfiguration(configuration: PdfActivityConfiguration.Builder) {        configuration            .fitMode(PageFitMode.FIT_TO_WIDTH)            // Disable all Nutrient views.            .annotationEditingEnabled(false)            .documentEditorEnabled(false)            .searchEnabled(false)            .outlineEnabled(false)            .bookmarkListEnabled(false)            .annotationListEnabled(false)            .setThumbnailBarMode(ThumbnailBarMode.THUMBNAIL_BAR_MODE_NONE)            .documentTitleOverlayEnabled(false)            .pageNumberOverlayEnabled(false)            .thumbnailGridEnabled(false)            .setEnabledShareFeatures(ShareFeatures.none())            .printingEnabled(false)            .settingsMenuEnabled(false)            // Force toolbar visibility.            .setUserInterfaceViewMode(UserInterfaceViewMode.USER_INTERFACE_VIEW_MODE_VISIBLE)            // Disable text selection.            .textSelectionEnabled(false)            // Disable zoom.            .maxZoomScale(1.0f)    }}This code sample is an example that illustrates how to use our SDK. Please adapt it to your specific use case.